forked from qt-creator/qt-creator
qbs build: Fix libclang Probe for qbs > 1.10
Probe configure scripts no longer have direct access to module instances. Change-Id: I87c5a7dbd44633cda5740d185829cecdc2d128e6 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
This commit is contained in:
@@ -29,7 +29,7 @@ function isSuitableLLVMConfig(llvmConfigCandidate, qtcFunctions)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
function llvmConfig(qbs, qtcFunctions)
|
function llvmConfig(hostOS, qtcFunctions)
|
||||||
{
|
{
|
||||||
var llvmInstallDirFromEnv = Environment.getEnv("LLVM_INSTALL_DIR")
|
var llvmInstallDirFromEnv = Environment.getEnv("LLVM_INSTALL_DIR")
|
||||||
var llvmConfigVariants = [
|
var llvmConfigVariants = [
|
||||||
@@ -37,7 +37,7 @@ function llvmConfig(qbs, qtcFunctions)
|
|||||||
];
|
];
|
||||||
|
|
||||||
// Prefer llvm-config* from LLVM_INSTALL_DIR
|
// Prefer llvm-config* from LLVM_INSTALL_DIR
|
||||||
var suffix = qbs.hostOS.contains("windows") ? ".exe" : "";
|
var suffix = hostOS.contains("windows") ? ".exe" : "";
|
||||||
if (llvmInstallDirFromEnv) {
|
if (llvmInstallDirFromEnv) {
|
||||||
for (var i = 0; i < llvmConfigVariants.length; ++i) {
|
for (var i = 0; i < llvmConfigVariants.length; ++i) {
|
||||||
var variant = llvmInstallDirFromEnv + "/bin/" + llvmConfigVariants[i] + suffix;
|
var variant = llvmInstallDirFromEnv + "/bin/" + llvmConfigVariants[i] + suffix;
|
||||||
@@ -48,7 +48,7 @@ function llvmConfig(qbs, qtcFunctions)
|
|||||||
|
|
||||||
// Find llvm-config* in PATH
|
// Find llvm-config* in PATH
|
||||||
var pathListString = Environment.getEnv("PATH");
|
var pathListString = Environment.getEnv("PATH");
|
||||||
var separator = qbs.hostOS.contains("windows") ? ";" : ":";
|
var separator = hostOS.contains("windows") ? ";" : ":";
|
||||||
var pathList = pathListString.split(separator);
|
var pathList = pathListString.split(separator);
|
||||||
for (var i = 0; i < llvmConfigVariants.length; ++i) {
|
for (var i = 0; i < llvmConfigVariants.length; ++i) {
|
||||||
for (var j = 0; j < pathList.length; ++j) {
|
for (var j = 0; j < pathList.length; ++j) {
|
||||||
|
@@ -9,6 +9,9 @@ Module {
|
|||||||
Probe {
|
Probe {
|
||||||
id: clangProbe
|
id: clangProbe
|
||||||
|
|
||||||
|
property stringList hostOS: qbs.hostOS
|
||||||
|
property stringList targetOS: qbs.targetOS
|
||||||
|
|
||||||
property string llvmConfig
|
property string llvmConfig
|
||||||
property string llvmVersion
|
property string llvmVersion
|
||||||
property string llvmIncludeDir
|
property string llvmIncludeDir
|
||||||
@@ -21,12 +24,12 @@ Module {
|
|||||||
property string llvmBuildMode
|
property string llvmBuildMode
|
||||||
|
|
||||||
configure: {
|
configure: {
|
||||||
llvmConfig = ClangFunctions.llvmConfig(qbs, QtcFunctions);
|
llvmConfig = ClangFunctions.llvmConfig(hostOS, QtcFunctions);
|
||||||
llvmVersion = ClangFunctions.version(llvmConfig);
|
llvmVersion = ClangFunctions.version(llvmConfig);
|
||||||
llvmIncludeDir = ClangFunctions.includeDir(llvmConfig);
|
llvmIncludeDir = ClangFunctions.includeDir(llvmConfig);
|
||||||
llvmLibDir = ClangFunctions.libDir(llvmConfig);
|
llvmLibDir = ClangFunctions.libDir(llvmConfig);
|
||||||
llvmLibs = ClangFunctions.libraries(qbs.targetOS);
|
llvmLibs = ClangFunctions.libraries(targetOS);
|
||||||
llvmToolingLibs = ClangFunctions.toolingLibs(llvmConfig, qbs.targetOS);
|
llvmToolingLibs = ClangFunctions.toolingLibs(llvmConfig, targetOS);
|
||||||
llvmBuildMode = ClangFunctions.buildMode(llvmConfig);
|
llvmBuildMode = ClangFunctions.buildMode(llvmConfig);
|
||||||
var toolingParams = ClangFunctions.toolingParameters(llvmConfig);
|
var toolingParams = ClangFunctions.toolingParameters(llvmConfig);
|
||||||
llvmToolingDefines = toolingParams.defines;
|
llvmToolingDefines = toolingParams.defines;
|
||||||
|
Reference in New Issue
Block a user