aboutsummaryrefslogtreecommitdiffstats
path: root/share/qbs/modules/cpp/CppModule.qbs
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@qt.io>2017-05-18 16:27:33 +0200
committerJoerg Bornemann <joerg.bornemann@qt.io>2017-05-22 07:59:43 +0000
commit1dd00091f99e62d8c10677de98e753fe332565a9 (patch)
treee7b5a59e853d6e0e961d30e5de2ec595f9fc47fe /share/qbs/modules/cpp/CppModule.qbs
parentd9909033f53b0d4e79a525b95bf088b23e8ef9e2 (diff)
Make it possible to parametrize dependencies
Modules can declare dependency parameters, e.g. Module { name: "cpp" Parameter { property bool link } } Those parameters can be set in Depends items: CppApplication { Depends { name: "otherProduct" cpp.link: false } } Export items can provide default values for dependency parameters: DynamicLibrary { ... Export { Parameters { cpp.link: false } } } Rules can react on dependency parameters by accessing dep.parameters where dep is an object from the product.dependencies hierarchy. Showcase and test the feature by adding the cpp.link parameter, which can be set to false for library dependencies that should not be linked. [ChangeLog] Added a way to parametrize dependencies. [ChangeLog][Parameters] Added the cpp.link parameter to enable library dependencies to be excluded from linking. Task-number: QBS-585 Change-Id: I3b445ed65d5949a94426879e07a533a1c2af24d8 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'share/qbs/modules/cpp/CppModule.qbs')
-rw-r--r--share/qbs/modules/cpp/CppModule.qbs4
1 files changed, 4 insertions, 0 deletions
diff --git a/share/qbs/modules/cpp/CppModule.qbs b/share/qbs/modules/cpp/CppModule.qbs
index 8742e618e..1019b50c2 100644
--- a/share/qbs/modules/cpp/CppModule.qbs
+++ b/share/qbs/modules/cpp/CppModule.qbs
@@ -462,4 +462,8 @@ Module {
v.set();
}
}
+
+ Parameter {
+ property bool link
+ }
}