From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1659731-garchives=archives.gentoo.org@lists.gentoo.org>
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 871B5159C9B
	for <garchives@archives.gentoo.org>; Thu,  8 Aug 2024 10:05:53 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 84FFCE2AD5;
	Thu,  8 Aug 2024 10:05:52 +0000 (UTC)
Received: from smtp.gentoo.org (mail.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))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 6D4F3E2AD5
	for <gentoo-commits@lists.gentoo.org>; Thu,  8 Aug 2024 10:05:52 +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 A7C9E34300E
	for <gentoo-commits@lists.gentoo.org>; Thu,  8 Aug 2024 10:05:51 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id BDDED1B9A
	for <gentoo-commits@lists.gentoo.org>; Thu,  8 Aug 2024 10:05:49 +0000 (UTC)
From: "Sam James" <sam@gentoo.org>
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" <sam@gentoo.org>
Message-ID: <1723111521.6df977928704e77d2f672d3890ceadc8ba837ab5.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: 6df977928704e77d2f672d3890ceadc8ba837ab5
X-VCS-Branch: master
Date: Thu,  8 Aug 2024 10:05:49 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: e06eb12e-f260-4f7a-aa29-3bd6803957d2
X-Archives-Hash: 3667ae6a17cd501e064ba61c9afc34a3

commit:     6df977928704e77d2f672d3890ceadc8ba837ab5
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug  8 10:04:02 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug  8 10:05:21 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6df97792

toolchain.eclass: more src_test flag fixes

We ended up not running many tests because it got interpreted as '--Werror'
with the braces/splitting (e.g. rust and such got skipped entirely).

With this change, we seem to be nearly there although we have issues
with Fortran tests that have C for interop because we get the unsupported
arg warnings...

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

 eclass/toolchain.eclass | 41 ++++++++++++++++++++++++++---------------
 1 file changed, 26 insertions(+), 15 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 550845b7dd47..86a29f5aacb8 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1924,9 +1924,14 @@ toolchain_src_test() {
 
 	# Use a subshell to allow meddling with flags just for the testsuite
 	(
+		# Unexpected warnings confuse the tests.
+		filter-flags -W*
+
 		# Workaround our -Wformat-security default which breaks
 		# various tests as it adds unexpected warning output.
-		append-flags -Wno-format-security -Wno-format
+		# (Only for C/C++ here to avoid noise for Fortran.)
+		append-cflags -Wno-format-security -Wno-format
+		append-cxxflags -Wno-format-security -Wno-format
 		# Workaround our -Wtrampolines default which breaks
 		# tests too.
 		append-flags -Wno-trampolines
@@ -1948,24 +1953,30 @@ toolchain_src_test() {
 		filter-flags -Wbuiltin-declaration-mismatch
 
 		# TODO: Does this handle s390 (-m31) correctly?
-		is_multilib && GCC_TESTS_RUNTESTFLAGS+=" --target_board=unix\{,-m32\}"
-
-		GCC_TESTS_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}"
-		)
+		is_multilib && GCC_TESTS_RUNTESTFLAGS+=" --target_board=unix{,-m32}"
 
 		# nonfatal here as we die if the comparison below fails. Also, note that
 		# the exit code of targets other than 'check' may be unreliable.
 		nonfatal emake -C "${WORKDIR}"/build -k "${GCC_TESTS_CHECK_TARGET}" \
-			RUNTESTFLAGS="${GCC_TESTS_RUNTESTFLAGS[*]}"
+			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="${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}"
 	)
 
 	# Produce an updated failure manifest.