aboutsummaryrefslogtreecommitdiffstats
path: root/share/qbs/modules/cpp/windows-msvc-base.qbs
diff options
context:
space:
mode:
authorDenis Shienkov <denis.shienkov@gmail.com>2021-09-27 17:19:30 +0300
committerDenis Shienkov <denis.shienkov@gmail.com>2021-09-28 10:44:44 +0000
commitf25acf18be2cd917f71cad41123fafd42bbc8374 (patch)
treec0f7ec4491c0acc611b9b88bf9814f45452ec9f2 /share/qbs/modules/cpp/windows-msvc-base.qbs
parentcd4f5c72820ebaa5b91a4cdd3cfe44173a018947 (diff)
Unify generation of precompiled headers
This patch unifies the functions to generate the output file tags, and the output artifacts for the precompiled headers. Change-Id: I84be3f56037220ae5ade6e3d1d1a4e7d0a46847f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'share/qbs/modules/cpp/windows-msvc-base.qbs')
-rw-r--r--share/qbs/modules/cpp/windows-msvc-base.qbs21
1 files changed, 5 insertions, 16 deletions
diff --git a/share/qbs/modules/cpp/windows-msvc-base.qbs b/share/qbs/modules/cpp/windows-msvc-base.qbs
index 98efafe91..3629536af 100644
--- a/share/qbs/modules/cpp/windows-msvc-base.qbs
+++ b/share/qbs/modules/cpp/windows-msvc-base.qbs
@@ -92,6 +92,7 @@ CppModule {
executableSuffix: ".exe"
debugInfoSuffix: ".pdb"
objectSuffix: ".obj"
+ precompiledHeaderSuffix: ".pch"
imageFormat: "pe"
Properties {
condition: product.multiplexByQbsProperties.contains("buildVariants")
@@ -126,14 +127,8 @@ CppModule {
condition: useCPrecompiledHeader
inputs: ["c_pch_src"]
auxiliaryInputs: ["hpp"]
- Artifact {
- fileTags: ['obj']
- filePath: Utilities.getHash(input.completeBaseName) + '_c' + input.cpp.objectSuffix
- }
- Artifact {
- fileTags: ['c_pch']
- filePath: product.name + '_c.pch'
- }
+ outputFileTags: Cpp.precompiledHeaderOutputTags("c", true)
+ outputArtifacts: Cpp.precompiledHeaderOutputArtifacts(input, product, "c", true)
prepare: {
return MSVC.prepareCompiler.apply(MSVC, arguments);
}
@@ -144,14 +139,8 @@ CppModule {
inputs: ["cpp_pch_src"]
explicitlyDependsOn: ["c_pch"] // to prevent vc--0.pdb conflict
auxiliaryInputs: ["hpp"]
- Artifact {
- fileTags: ['obj']
- filePath: Utilities.getHash(input.completeBaseName) + '_cpp' + input.cpp.objectSuffix
- }
- Artifact {
- fileTags: ['cpp_pch']
- filePath: product.name + '_cpp.pch'
- }
+ outputFileTags: Cpp.precompiledHeaderOutputTags("cpp", true)
+ outputArtifacts: Cpp.precompiledHeaderOutputArtifacts(input, product, "cpp", true)
prepare: {
return MSVC.prepareCompiler.apply(MSVC, arguments);
}