diff options
Diffstat (limited to 'src/plugins/qbsprojectmanager/qbsproject.cpp')
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsproject.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/plugins/qbsprojectmanager/qbsproject.cpp b/src/plugins/qbsprojectmanager/qbsproject.cpp index 4e46e43c68..db8404f178 100644 --- a/src/plugins/qbsprojectmanager/qbsproject.cpp +++ b/src/plugins/qbsprojectmanager/qbsproject.cpp @@ -916,9 +916,17 @@ static RawProjectParts generateProjectParts( location.value("line").toInt(), location.value("column").toInt()); rpp.setBuildSystemTarget(QbsProductNode::getBuildKey(prd)); - rpp.setBuildTargetType(prd.value("is-runnable").toBool() - ? BuildTargetType::Executable - : BuildTargetType::Library); + if (prd.value("is-runnable").toBool()) { + rpp.setBuildTargetType(BuildTargetType::Executable); + } else { + const QJsonArray pType = prd.value("type").toArray(); + if (pType.contains("staticlibrary") || pType.contains("dynamiclibrary") + || pType.contains("loadablemodule")) { + rpp.setBuildTargetType(BuildTargetType::Library); + } else { + rpp.setBuildTargetType(BuildTargetType::Unknown); + } + } rpp.setSelectedForBuilding(grp.value("is-enabled").toBool()); QHash<QString, QJsonObject> filePathToSourceArtifact; |