diff options
author | Christian Kandeler <christian.kandeler@digia.com> | 2014-07-09 15:17:14 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@digia.com> | 2014-07-09 16:23:16 +0200 |
commit | 1f15a83966d600d4f93c07c17a07b24a1c1627b2 (patch) | |
tree | b60ecfdba024cc32645fe393a1338e33528e9913 /src/lib/corelib/language | |
parent | 04e31ed5cd574fd75372712d6b669c3d2fd50a20 (diff) |
Allow empty submodules property in Depends item.
It just means that no dependency should be pulled in by this item.
Useful for this kind of thing:
Product {
Depends {
name: "Qt"
submodules: theQtSubModulesINeed
}
property stringList theQtSubModulesIneed // Can be empty.
}
Change-Id: I8e500c3acfa4374be9005fcf349c0417ad47a76e
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'src/lib/corelib/language')
-rw-r--r-- | src/lib/corelib/language/moduleloader.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/lib/corelib/language/moduleloader.cpp b/src/lib/corelib/language/moduleloader.cpp index 3c70fa532..4d22e5efd 100644 --- a/src/lib/corelib/language/moduleloader.cpp +++ b/src/lib/corelib/language/moduleloader.cpp @@ -639,7 +639,13 @@ void ModuleLoader::resolveDependsItem(DependsContext *dependsContext, Item *item } QString superModuleName; - QStringList submodules = m_evaluator->stringListValue(dependsItem, QLatin1String("submodules")); + bool submodulesPropertySet; + QStringList submodules = m_evaluator->stringListValue(dependsItem, QLatin1String("submodules"), + &submodulesPropertySet); + if (submodules.isEmpty() && submodulesPropertySet) { + m_logger.qbsTrace() << "Ignoring Depends item with empty submodules list."; + return; + } if (nameParts.count() == 2) { if (Q_UNLIKELY(!submodules.isEmpty())) throw ErrorInfo(Tr::tr("Depends.submodules cannot be used if name contains a dot."), |