19
19
compilerName: "cl.exe"
21
21
property bool generateManifestFiles: true
22
property string toolchainInstallPath
23
property string windowsSDKPath
22
property path toolchainInstallPath
23
property path windowsSDKPath
24
24
property string architecture: qbs.architecture || "x86"
25
25
staticLibraryPrefix: ""
26
26
dynamicLibraryPrefix: ""
73
condition: precompiledHeader !== undefined
74
inputs: precompiledHeader
73
condition: cPrecompiledHeader !== undefined
74
inputs: cPrecompiledHeader
78
78
var completeBaseName = FileInfo.completeBaseName(product.moduleProperty("cpp",
79
"precompiledHeader"));
80
return ".obj/" + product.name + "/" + completeBaseName + '.obj'
79
"cPrecompiledHeader"));
80
return ".obj/" + product.name + "/" + completeBaseName + '_c.obj'
85
fileName: ".obj/" + product.name + "/" + product.name + '.pch'
85
fileName: ".obj/" + product.name + "/" + product.name + '_c.pch'
88
88
var platformDefines = ModUtils.moduleProperties(input, 'platformDefines');
91
91
var systemIncludePaths = ModUtils.moduleProperties(input, 'systemIncludePaths');
92
92
var cFlags = ModUtils.moduleProperties(input, 'platformCFlags').concat(
93
93
ModUtils.moduleProperties(input, 'cFlags'));
94
return MSVC.prepareCompiler(product, input, outputs, platformDefines, defines, includePaths, systemIncludePaths, cFlags, undefined)
99
condition: cxxPrecompiledHeader !== undefined
100
inputs: cxxPrecompiledHeader
101
explicitlyDependsOn: ["c_pch"] // to prevent vc--0.pdb conflict
105
var completeBaseName = FileInfo.completeBaseName(product.moduleProperty("cpp",
106
"cxxPrecompiledHeader"));
107
return ".obj/" + product.name + "/" + completeBaseName + '_cpp.obj'
111
fileTags: ['cpp_pch']
112
fileName: ".obj/" + product.name + "/" + product.name + '_cpp.pch'
115
var platformDefines = ModUtils.moduleProperties(input, 'platformDefines');
116
var defines = ModUtils.moduleProperties(input, 'defines');
117
var includePaths = ModUtils.moduleProperties(input, 'includePaths');
118
var systemIncludePaths = ModUtils.moduleProperties(input, 'systemIncludePaths');
94
119
var cxxFlags = ModUtils.moduleProperties(input, 'platformCxxFlags').concat(
95
120
ModUtils.moduleProperties(input, 'cxxFlags'));
96
return MSVC.prepareCompiler(product, input, outputs, platformDefines, defines, includePaths, systemIncludePaths, cFlags, cxxFlags)
121
return MSVC.prepareCompiler(product, input, outputs, platformDefines, defines, includePaths, systemIncludePaths, undefined, cxxFlags)