diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2018-09-18 18:06:12 +0200 |
---|---|---|
committer | Nikolai Kosjar <nikolai.kosjar@qt.io> | 2018-09-25 06:03:49 +0000 |
commit | 9da9ed45e9a869b99bdbe9c8a692dd80023fe5b6 (patch) | |
tree | 17fd80ae7b909b9ed4dc182d0e54e8002b9dd9b4 /qbs/modules | |
parent | 422da635f733219097ba1fd180942bc99c0da256 (diff) | |
download | qt-creator-9da9ed45e9a869b99bdbe9c8a692dd80023fe5b6.tar.gz |
Fix qbs build of clangformat plugin
Change-Id: Ic23a34048c62ed39590ad422ea3e4f8fea9fc5a1
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'qbs/modules')
-rw-r--r-- | qbs/modules/libclang/functions.js | 34 | ||||
-rw-r--r-- | qbs/modules/libclang/libclang.qbs | 3 |
2 files changed, 30 insertions, 7 deletions
diff --git a/qbs/modules/libclang/functions.js b/qbs/modules/libclang/functions.js index beca112787..8533499260 100644 --- a/qbs/modules/libclang/functions.js +++ b/qbs/modules/libclang/functions.js @@ -89,6 +89,31 @@ function libraries(targetOS) return targetOS.contains("windows") ? ["libclang.lib", "advapi32.lib", "shell32.lib"] : ["clang"] } +function extraLibraries(llvmConfig, targetOS) +{ + var libs = [] + if (targetOS.contains("windows")) + libs.push("version"); + var dynamicList = readListOutput(llvmConfig, ["--libs"]) + .concat(readListOutput(llvmConfig, ["--system-libs"])); + return libs.concat(dynamicList.map(function(s) { + return s.startsWith("-l") ? s.slice(2) : s; + })); +} + +function formattingLibs(llvmConfig, targetOS) +{ + var fixedList = [ + "clangFormat", + "clangToolingCore", + "clangRewrite", + "clangLex", + "clangBasic", + ]; + + return fixedList.concat(extraLibraries(llvmConfig, targetOS)); +} + function toolingLibs(llvmConfig, targetOS) { var fixedList = [ @@ -108,13 +133,8 @@ function toolingLibs(llvmConfig, targetOS) "clangLex", "clangBasic", ]; - if (targetOS.contains("windows")) - fixedList.push("version"); - var dynamicList = readListOutput(llvmConfig, ["--libs"]) - .concat(readListOutput(llvmConfig, ["--system-libs"])); - return fixedList.concat(dynamicList.map(function(s) { - return s.startsWith("-l") ? s.slice(2) : s; - })); + + return fixedList.concat(extraLibraries(llvmConfig, targetOS)); } function toolingParameters(llvmConfig) diff --git a/qbs/modules/libclang/libclang.qbs b/qbs/modules/libclang/libclang.qbs index 435b8b786a..1d695a2c8d 100644 --- a/qbs/modules/libclang/libclang.qbs +++ b/qbs/modules/libclang/libclang.qbs @@ -22,6 +22,7 @@ Module { property stringList llvmToolingDefines property stringList llvmToolingIncludes property stringList llvmToolingCxxFlags + property stringList llvmFormattingLibs property string llvmBuildMode configure: { @@ -37,6 +38,7 @@ Module { llvmToolingDefines = toolingParams.defines; llvmToolingIncludes = toolingParams.includes; llvmToolingCxxFlags = toolingParams.cxxFlags; + llvmFormattingLibs = ClangFunctions.formattingLibs(llvmConfig, targetOS); found = llvmConfig && File.exists(llvmIncludeDir.concat("/clang-c/Index.h")); } } @@ -48,6 +50,7 @@ Module { property string llvmBinDir: clangProbe.llvmBinDir property stringList llvmLibs: clangProbe.llvmLibs property stringList llvmToolingLibs: clangProbe.llvmToolingLibs + property stringList llvmFormattingLibs: clangProbe.llvmFormattingLibs property string llvmBuildMode: clangProbe.llvmBuildMode property bool llvmBuildModeMatches: qbs.buildVariant === llvmBuildMode.toLowerCase() property stringList llvmToolingDefines: clangProbe.llvmToolingDefines |