Add qt's toolchain file to initial cmake arguments for Windows on ARM64

Fixes: QTCREATORBUG-26636
Change-Id: Id9fc9f3c2242136d2fa4d42e7e64b038a50b1809
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
Oliver Wolff
2021-12-01 13:46:58 +01:00
parent 38b2bb9fb2
commit beb167a963

View File

@@ -805,6 +805,13 @@ static bool isDocker(const Kit *k)
return DeviceTypeKitAspect::deviceTypeId(k) == Docker::Constants::DOCKER_DEVICE_TYPE;
}
static bool isWindowsARM64(const Kit *k)
{
const auto targetAbi = ToolChainKitAspect::cxxToolChain(k)->targetAbi();
return targetAbi.os() == Abi::WindowsOS && targetAbi.architecture() == Abi::ArmArchitecture
&& targetAbi.wordWidth() == 64;
}
static QStringList defaultInitialCMakeArguments(const Kit *k, const QString buildType)
{
// Generator:
@@ -991,7 +998,7 @@ CMakeBuildConfiguration::CMakeBuildConfiguration(Target *target, Id id)
initialArgs.append("%{" + QLatin1String(CMAKE_OSX_ARCHITECTURES_FLAG) + "}");
}
if (isWebAssembly(k) || isQnx(k)) {
if (isWebAssembly(k) || isQnx(k) || isWindowsARM64(k)) {
const QtSupport::BaseQtVersion *qt = QtSupport::QtKitAspect::qtVersion(k);
if (qt && qt->qtVersion().majorVersion >= 6)
initialArgs.append(CMAKE_QT6_TOOLCHAIN_FILE_ARG);