aboutsummaryrefslogtreecommitdiffstats
path: root/qbs
diff options
context:
space:
mode:
authorIvan Donchevskii <ivan.donchevskii@qt.io>2018-10-02 10:53:31 +0200
committerIvan Donchevskii <ivan.donchevskii@qt.io>2018-10-05 11:08:27 +0000
commite0d7d037207c2716380b7a2a860e13138f6eaed5 (patch)
tree78cd380447ac7e5c28873b30a2b08df293291cf2 /qbs
parent0e84c8892d98adb61c16d6a9acfee6abfa1a7abe (diff)
Clang: Fix ClangFormat build with clang-7
Change-Id: I0859b7aad1a49f8d46ee4b32cc32039cfa0b482b Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Diffstat (limited to 'qbs')
-rw-r--r--qbs/modules/libclang/functions.js34
-rw-r--r--qbs/modules/libclang/libclang.qbs2
2 files changed, 26 insertions, 10 deletions
diff --git a/qbs/modules/libclang/functions.js b/qbs/modules/libclang/functions.js
index 8533499260..bdffcc9c23 100644
--- a/qbs/modules/libclang/functions.js
+++ b/qbs/modules/libclang/functions.js
@@ -101,17 +101,33 @@ function extraLibraries(llvmConfig, targetOS)
}));
}
-function formattingLibs(llvmConfig, targetOS)
+function formattingLibs(llvmConfig, qtcFunctions, targetOS)
{
- var fixedList = [
- "clangFormat",
- "clangToolingCore",
- "clangRewrite",
- "clangLex",
- "clangBasic",
- ];
+ var clangVersion = version(llvmConfig)
+ var libs = []
+ if (qtcFunctions.versionIsAtLeast(clangVersion, MinimumLLVMVersion)) {
+ if (qtcFunctions.versionIsAtLeast(clangVersion, "7.0.0")) {
+ libs.concat([
+ "clangFormat",
+ "clangToolingInclusions",
+ "clangToolingCore",
+ "clangRewrite",
+ "clangLex",
+ "clangBasic",
+ ]);
+ } else {
+ libs.concat([
+ "clangFormat",
+ "clangToolingCore",
+ "clangRewrite",
+ "clangLex",
+ "clangBasic",
+ ]);
+ }
+ libs.concat(extraLibraries(llvmConfig, targetOS));
+ }
- return fixedList.concat(extraLibraries(llvmConfig, targetOS));
+ return libs;
}
function toolingLibs(llvmConfig, targetOS)
diff --git a/qbs/modules/libclang/libclang.qbs b/qbs/modules/libclang/libclang.qbs
index 1d695a2c8d..e95250ddba 100644
--- a/qbs/modules/libclang/libclang.qbs
+++ b/qbs/modules/libclang/libclang.qbs
@@ -38,7 +38,7 @@ Module {
llvmToolingDefines = toolingParams.defines;
llvmToolingIncludes = toolingParams.includes;
llvmToolingCxxFlags = toolingParams.cxxFlags;
- llvmFormattingLibs = ClangFunctions.formattingLibs(llvmConfig, targetOS);
+ llvmFormattingLibs = ClangFunctions.formattingLibs(llvmConfig, QtcFunctions, targetOS);
found = llvmConfig && File.exists(llvmIncludeDir.concat("/clang-c/Index.h"));
}
}