From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id BBB38158064 for ; Wed, 1 May 2024 00:27:32 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id AB2C6E29BE; Wed, 1 May 2024 00:27:31 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 8E37CE29BE for ; Wed, 1 May 2024 00:27:31 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id A8884335DEB for ; Wed, 1 May 2024 00:27:30 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 15B8293E for ; Wed, 1 May 2024 00:27:29 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1714523180.467c2e2e91f66157ebfc278d7726827c3d8a6e3b.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: eclass/ X-VCS-Repository: repo/gentoo X-VCS-Files: eclass/toolchain.eclass X-VCS-Directories: eclass/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 467c2e2e91f66157ebfc278d7726827c3d8a6e3b X-VCS-Branch: master Date: Wed, 1 May 2024 00:27:29 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 77c528e5-4a34-4005-b3f4-8fec916e4ff4 X-Archives-Hash: b71a6af66ef6eb0c132635167aea0a20 commit: 467c2e2e91f66157ebfc278d7726827c3d8a6e3b Author: Sam James gentoo org> AuthorDate: Tue Apr 30 03:16:07 2024 +0000 Commit: Sam James gentoo org> CommitDate: Wed May 1 00:26:20 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=467c2e2e toolchain.eclass: iterate over older slots if test manifest doesn't exist Iterate over all known slots (at least those using the "new" SLOT value from --with-major-version-only since ~GCC 10 in Gentoo) if we couldn't find a test manifest for GCC_TESTS_COMPARISON_SLOT, rather than expecting pristine results. This makes life easier when installing a new slot (or newly enabling tests for one). It's *particularly* useful, I think, for arch testers who might want to establish a baseline once but not have to keep doing it across many chroots for each new slot. Signed-off-by: Sam James gentoo.org> eclass/toolchain.eclass | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass index 4d057de7a0f3..645e18ff27ca 100644 --- a/eclass/toolchain.eclass +++ b/eclass/toolchain.eclass @@ -1930,7 +1930,17 @@ toolchain_src_test() { --manifest="${T}"/${CHOST}.xfail \ --produce_manifest &> /dev/null - local manifest="${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail" + # If there's no manifest available, check older slots, as it's better + # than nothing. We start with 10 for the fallback as the first version + # we started using --with-major-version-only. + local possible_slot + for possible_slot in "${GCC_TESTS_COMPARISON_SLOT}" $(seq ${SLOT} -1 10) ; do + [[ -f "${GCC_TESTS_COMPARISON_DIR}/${possible_slot}/${CHOST}.xfail" ]] && break + done + if [[ ${possible_slot} != "${GCC_TESTS_COMPARISON_SLOT}" ]] ; then + ewarn "Couldn't find manifest for ${GCC_TESTS_COMPARISON_SLOT}; falling back to ${possible_slot}" + fi + local manifest="${GCC_TESTS_COMPARISON_DIR}/${possible_slot}/${CHOST}.xfail" if [[ -f "${manifest}" ]] ; then # TODO: Distribute some baseline results in e.g. gcc-patches.git?