aboutsummaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorDenis Shienkov <denis.shienkov@gmail.com>2020-07-02 18:26:13 +0300
committerDenis Shienkov <denis.shienkov@gmail.com>2020-07-02 16:00:51 +0000
commit826af6214f70ad7c7315148b0f05867a45a55031 (patch)
treeba6ee74574417f20d4cee6d3380c54afacef1479 /share
parent80ae31f08f7e6e91aa60fea6a2ef399412d8ddd5 (diff)
baremetal: Fix cpp.prefixHeaders for KEIL ARM clang toolchain
The 'armclang' compiler does not have the '--preinclude' option, it has the '-include' option instead. Change-Id: Idfb537c0cead1152b4444aa152220a173ce30f5e Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Diffstat (limited to 'share')
-rw-r--r--share/qbs/modules/cpp/keil.js27
1 files changed, 18 insertions, 9 deletions
diff --git a/share/qbs/modules/cpp/keil.js b/share/qbs/modules/cpp/keil.js
index 5ef15e57f..2462fd754 100644
--- a/share/qbs/modules/cpp/keil.js
+++ b/share/qbs/modules/cpp/keil.js
@@ -675,6 +675,8 @@ function compilerFlags(project, product, input, outputs, explicitlyDependsOn) {
var tag = ModUtils.fileTagForTargetLanguage(input.fileTags.concat(outputs.obj[0].fileTags));
var args = [];
+ var prefixHeaders = input.cpp.prefixHeaders;
+
var allDefines = [];
var platformDefines = input.cpp.platformDefines;
if (platformDefines)
@@ -752,17 +754,16 @@ function compilerFlags(project, product, input, outputs, explicitlyDependsOn) {
// Output.
args.push("-o", outputs.obj[0].filePath);
- var prefixHeaders = input.cpp.prefixHeaders;
- for (var i in prefixHeaders)
- args.push("--preinclude", prefixHeaders[i]);
-
- // Defines.
- args = args.concat(allDefines.map(function(define) { return '-D' + define }));
- // Includes.
- args = args.concat(allIncludePaths.map(function(include) { return '-I' + include }));
-
var compilerPath = input.cpp.compilerPath;
if (isArmCCCompiler(compilerPath)) {
+ for (var i in prefixHeaders)
+ args.push("--preinclude", prefixHeaders[i]);
+
+ // Defines.
+ args = args.concat(allDefines.map(function(define) { return '-D' + define }));
+ // Includes.
+ args = args.concat(allIncludePaths.map(function(include) { return '-I' + include }));
+
// Debug information flags.
if (input.cpp.debugInformation) {
args.push("--debug");
@@ -837,6 +838,14 @@ function compilerFlags(project, product, input, outputs, explicitlyDependsOn) {
args.push("--list_dir", FileInfo.path(outputs.lst[0].filePath));
}
} else if (isArmClangCompiler(compilerPath)) {
+ for (var i in prefixHeaders)
+ args.push("-include", prefixHeaders[i]);
+
+ // Defines.
+ args = args.concat(allDefines.map(function(define) { return '-D' + define }));
+ // Includes.
+ args = args.concat(allIncludePaths.map(function(include) { return '-I' + include }));
+
// Debug information flags.
if (input.cpp.debugInformation)
args.push("-g");