aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2022-10-10 17:52:23 +0200
committerChristian Kandeler <christian.kandeler@qt.io>2022-10-14 12:57:52 +0000
commited87ff4529223d273ccc95658d15285aef0f3ba8 (patch)
treeda5f8a4e32c66f3f2ea3f886542d882601d9b75b
parent19a163316c3ef90222c1792e720a4c71277d6097 (diff)
Github actions: Update mingw
8.1 has a bug that we run into when compiling quickjs (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86048). Change-Id: I1df7e7f3e2e0d39f44d1c8636f74c3333167db0d Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
-rw-r--r--.github/actions/download-mingw/action.yml2
-rwxr-xr-xscripts/install-qt.sh2
-rw-r--r--tests/auto/api/tst_api.cpp10
-rw-r--r--tests/auto/blackbox/tst_blackbox.cpp25
4 files changed, 31 insertions, 8 deletions
diff --git a/.github/actions/download-mingw/action.yml b/.github/actions/download-mingw/action.yml
index f8fb47f28..24d196785 100644
--- a/.github/actions/download-mingw/action.yml
+++ b/.github/actions/download-mingw/action.yml
@@ -4,7 +4,7 @@ inputs:
version:
description: 'MinGW version'
required: false
- default: '8.1.0'
+ default: '9.0.0'
toolchain:
description: 'Toolchain'
required: false
diff --git a/scripts/install-qt.sh b/scripts/install-qt.sh
index 2cc895e07..417a708b0 100755
--- a/scripts/install-qt.sh
+++ b/scripts/install-qt.sh
@@ -261,7 +261,7 @@ function compute_url(){
echo "${BASE_URL}/${REMOTE_PATH}"
return 0
elif [[ "${COMPONENT}" =~ "mingw" ]]; then
- REMOTE_BASE="tools_mingw/qt.tools.${TOOLCHAIN}${VERSION//./}"
+ REMOTE_BASE="tools_mingw90/qt.tools.${TOOLCHAIN}${VERSION//./}"
REMOTE_PATH="$(${CURL} ${BASE_URL}/${REMOTE_BASE}/ | grep -o -E "[[:alnum:]_.\-]*7z" | grep -v "meta" | head -1)"
if [ ! -z "${REMOTE_PATH}" ]; then
diff --git a/tests/auto/api/tst_api.cpp b/tests/auto/api/tst_api.cpp
index 200239081..0c1b44fad 100644
--- a/tests/auto/api/tst_api.cpp
+++ b/tests/auto/api/tst_api.cpp
@@ -362,7 +362,10 @@ void TestApi::buildProject()
+ QLatin1String(".qbs");
qbs::SetupProjectParameters params = defaultSetupParameters(projectFilePath);
removeBuildDir(params);
- qbs::ErrorInfo errorInfo = doBuildProject(projectFilePath);
+ ProcessResultReceiver resultReceiver;
+ qbs::ErrorInfo errorInfo = doBuildProject(projectFilePath, nullptr, &resultReceiver);
+ if (resultReceiver.output.contains("mingw32_gt_pch_use_address"))
+ QSKIP("https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91440");
VERIFY_NO_ERROR(errorInfo);
QVERIFY(regularFileExists(relativeBuildGraphFilePath()));
if (!productFileName.isEmpty()) {
@@ -483,9 +486,14 @@ void TestApi::buildSingleFile()
m_logSink->setLogLevel(qbs::LoggerMaxLevel);
std::unique_ptr<qbs::BuildJob> buildJob(project.buildAllProducts(options));
BuildDescriptionReceiver receiver;
+ ProcessResultReceiver resultReceiver;
+ connect(buildJob.get(), &qbs::BuildJob::reportProcessResult,
+ &resultReceiver, &ProcessResultReceiver::handleProcessResult);
connect(buildJob.get(), &qbs::BuildJob::reportCommandDescription, &receiver,
&BuildDescriptionReceiver::handleDescription);
waitForFinished(buildJob.get());
+ if (resultReceiver.output.contains("mingw32_gt_pch_use_address"))
+ QSKIP("https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91440");
QVERIFY2(!buildJob->error().hasError(), qPrintable(buildJob->error().toString()));
QCOMPARE(receiver.descriptions.count("compiling"), 2);
QCOMPARE(receiver.descriptions.count("precompiling"), 1);
diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp
index 8bc905929..3907a5b66 100644
--- a/tests/auto/blackbox/tst_blackbox.cpp
+++ b/tests/auto/blackbox/tst_blackbox.cpp
@@ -3101,17 +3101,26 @@ void TestBlackbox::pathProbe()
void TestBlackbox::pchChangeTracking()
{
QDir::setCurrent(testDataDir + "/pch-change-tracking");
- QCOMPARE(runQbs(), 0);
+ bool success = runQbs() == 0;
+ if (!success && m_qbsStderr.contains("mingw32_gt_pch_use_address"))
+ QSKIP("https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91440");
+ QVERIFY(success);
QVERIFY(m_qbsStdout.contains("precompiling pch.h (cpp)"));
WAIT_FOR_NEW_TIMESTAMP();
touch("header1.h");
- QCOMPARE(runQbs(), 0);
+ success = runQbs() == 0;
+ if (!success && m_qbsStderr.contains("mingw32_gt_pch_use_address"))
+ QSKIP("https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91440");
+ QVERIFY(success);
QVERIFY(m_qbsStdout.contains("precompiling pch.h (cpp)"));
QVERIFY(m_qbsStdout.contains("compiling header2.cpp"));
QVERIFY(m_qbsStdout.contains("compiling main.cpp"));
WAIT_FOR_NEW_TIMESTAMP();
touch("header2.h");
- QCOMPARE(runQbs(), 0);
+ success = runQbs() == 0;
+ if (!success && m_qbsStderr.contains("mingw32_gt_pch_use_address"))
+ QSKIP("https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91440");
+ QVERIFY(success);
QVERIFY2(!m_qbsStdout.contains("precompiling pch.h (cpp)"), m_qbsStdout.constData());
}
@@ -3241,13 +3250,19 @@ void TestBlackbox::pluginDependency()
void TestBlackbox::precompiledAndPrefixHeaders()
{
QDir::setCurrent(testDataDir + "/precompiled-and-prefix-headers");
- QCOMPARE(runQbs(), 0);
+ const bool success = runQbs() == 0;
+ if (!success && m_qbsStderr.contains("mingw32_gt_pch_use_address"))
+ QSKIP("https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91440");
+ QVERIFY(success);
}
void TestBlackbox::precompiledHeaderAndRedefine()
{
QDir::setCurrent(testDataDir + "/precompiled-headers-and-redefine");
- QCOMPARE(runQbs(), 0);
+ const bool success = runQbs() == 0;
+ if (!success && m_qbsStderr.contains("mingw32_gt_pch_use_address"))
+ QSKIP("https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91440");
+ QVERIFY(success);
}
void TestBlackbox::preventFloatingPointValues()