diff options
author | Eike Ziller <eike.ziller@qt.io> | 2023-11-03 14:58:00 +0100 |
---|---|---|
committer | Eike Ziller <eike.ziller@qt.io> | 2023-11-03 14:58:00 +0100 |
commit | f9d46973717881b6891012810ffb87599ca7db58 (patch) | |
tree | 64b828750a4d02a013d54f1141d3e03aa14c4821 /src/plugins/qbsprojectmanager | |
parent | 5f7be10349339519a5977be9db9a3f781709e20b (diff) | |
parent | 0b322ef178551852c88f60e35cb78f5d5be585a0 (diff) |
Merge remote-tracking branch 'origin/12.0'
Change-Id: Ice9c78147917fc13b6cf81ba781a37bdcd870e17
Diffstat (limited to 'src/plugins/qbsprojectmanager')
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsprojectimporter.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp b/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp index 6fbae2dc4ab..d9d2d4c921b 100644 --- a/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp +++ b/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp @@ -22,6 +22,7 @@ #include <utils/hostosinfo.h> #include <QFileInfo> +#include <QJsonArray> using namespace ProjectExplorer; using namespace Utils; @@ -40,6 +41,7 @@ struct BuildGraphData FilePath qtBinPath; FilePath sysroot; QString buildVariant; + QStringList targetOS; }; static BuildGraphData extractBgData(const QbsSession::BuildGraphInfo &bgInfo) { @@ -50,7 +52,8 @@ static BuildGraphData extractBgData(const QbsSession::BuildGraphInfo &bgInfo) const QVariantMap prjCompilerPathByLanguage = moduleProps.value("cpp.compilerPathByLanguage").toMap(); const QString prjCompilerPath = moduleProps.value("cpp.compilerPath").toString(); - const QStringList prjToolchain = moduleProps.value("qbs.toolchain").toStringList(); + const QStringList prjToolchain = arrayToStringList( + moduleProps.value("qbs.toolchain").toJsonArray()); const bool prjIsMsvc = prjToolchain.contains("msvc"); bgData.cCompilerPath = FilePath::fromString( prjIsMsvc ? prjCompilerPath : prjCompilerPathByLanguage.value("c").toString()); @@ -59,6 +62,7 @@ static BuildGraphData extractBgData(const QbsSession::BuildGraphInfo &bgInfo) bgData.qtBinPath = FilePath::fromString(moduleProps.value("Qt.core.binPath").toString()); bgData.sysroot = FilePath::fromString(moduleProps.value("qbs.sysroot").toString()); bgData.buildVariant = moduleProps.value("qbs.buildVariant").toString(); + bgData.targetOS = arrayToStringList(moduleProps.value("qbs.targetOS").toJsonArray()); return bgData; } @@ -116,7 +120,7 @@ QList<void *> QbsProjectImporter::examineDirectory(const FilePath &importPath, QList<void *> data; const FilePath bgFilePath = importPath.pathAppended(importPath.fileName() + ".bg"); const QStringList relevantProperties({ - "qbs.buildVariant", "qbs.sysroot", "qbs.toolchain", + "qbs.buildVariant", "qbs.sysroot", "qbs.targetOS", "qbs.toolchain", "cpp.compilerPath", "cpp.compilerPathByLanguage", "Qt.core.binPath" }); @@ -162,7 +166,7 @@ bool QbsProjectImporter::matchKit(void *directoryData, const Kit *k) const if (bgData->qtBinPath != qtVersion->hostBinPath()) return false; } - if (bgData->sysroot != SysRootKitAspect::sysRoot(k)) + if (!bgData->targetOS.contains("macos") && bgData->sysroot != SysRootKitAspect::sysRoot(k)) return false; qCDebug(qbsPmLog) << "Kit matches"; |