diff options
author | 2024-04-15 08:00:00 +0000 | |
---|---|---|
committer | 2024-04-16 02:38:48 +0100 | |
commit | b91c99d07e33c296a23e3b18b2658b81815b6b31 (patch) | |
tree | b4e68aba3e76394b6512dfdf0964833724c3b68f /eclass | |
parent | toolchain.eclass: do not ignore a baseline with GCC_TESTS_IGNORE_NO_BASELINE (diff) | |
download | gentoo-b91c99d07e33c296a23e3b18b2658b81815b6b31.tar.gz gentoo-b91c99d07e33c296a23e3b18b2658b81815b6b31.tar.bz2 gentoo-b91c99d07e33c296a23e3b18b2658b81815b6b31.zip |
toolchain.eclass: always generate a new test-suite baseline manifest
Previously, a new baseline was generated only in cases of test suite
success or when GCC_TESTS_IGNORE_NO_BASELINE was enabled.
After this change, if there is a test suite regression, users will have
the option to copy the new baseline file to the cache if they choose to
tolerate the regression. Additionally, the toolchain_pkg_preinst()
function will update the baseline automatically if the package is built
with the FEATURES=test-fail-continue setting.
Signed-off-by: Gabi Falk <gabifalk@gmx.com>
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'eclass')
-rw-r--r-- | eclass/toolchain.eclass | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass index 37a806e1c800..786d65da2d9a 100644 --- a/eclass/toolchain.eclass +++ b/eclass/toolchain.eclass @@ -1908,6 +1908,15 @@ toolchain_src_test() { # 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}" + # Produce an updated failure manifest. + einfo "Generating a new failure manifest ${T}/${CHOST}.xfail" + rm -f "${T}"/${CHOST}.xfail + edo "${T}"/validate_failures.py \ + --srcpath="${S}" \ + --build_dir="${WORKDIR}"/build \ + --manifest="${T}"/${CHOST}.xfail \ + --produce_manifest &> /dev/null + if [[ -f "${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail" ]] ; then # TODO: Distribute some baseline results in e.g. gcc-patches.git? # validate_failures.py manifest files support include directives. @@ -1936,13 +1945,6 @@ toolchain_src_test() { die "Tests failed (failures occurred with no reference data)" fi fi - - # Produce an updated set of expected results - edo "${T}"/validate_failures.py \ - --srcpath="${S}" \ - --build_dir="${WORKDIR}"/build \ - --manifest="${T}"/${CHOST}.xfail \ - --produce_manifest &> /dev/null } #---->> src_install <<---- |