From c278c26cb6c9f8c9382e8aa89002116612d87443 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Wed, 17 Jan 2018 15:19:17 +0100 Subject: [PATCH] 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 --- qbs/modules/libclang/functions.js | 6 +++--- qbs/modules/libclang/libclang.qbs | 9 ++++++--- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/qbs/modules/libclang/functions.js b/qbs/modules/libclang/functions.js index fe61da62dd1..a786e23d656 100644 --- a/qbs/modules/libclang/functions.js +++ b/qbs/modules/libclang/functions.js @@ -29,7 +29,7 @@ function isSuitableLLVMConfig(llvmConfigCandidate, qtcFunctions) return false; } -function llvmConfig(qbs, qtcFunctions) +function llvmConfig(hostOS, qtcFunctions) { var llvmInstallDirFromEnv = Environment.getEnv("LLVM_INSTALL_DIR") var llvmConfigVariants = [ @@ -37,7 +37,7 @@ function llvmConfig(qbs, qtcFunctions) ]; // Prefer llvm-config* from LLVM_INSTALL_DIR - var suffix = qbs.hostOS.contains("windows") ? ".exe" : ""; + var suffix = hostOS.contains("windows") ? ".exe" : ""; if (llvmInstallDirFromEnv) { for (var i = 0; i < llvmConfigVariants.length; ++i) { var variant = llvmInstallDirFromEnv + "/bin/" + llvmConfigVariants[i] + suffix; @@ -48,7 +48,7 @@ function llvmConfig(qbs, qtcFunctions) // Find llvm-config* in PATH var pathListString = Environment.getEnv("PATH"); - var separator = qbs.hostOS.contains("windows") ? ";" : ":"; + var separator = hostOS.contains("windows") ? ";" : ":"; var pathList = pathListString.split(separator); for (var i = 0; i < llvmConfigVariants.length; ++i) { for (var j = 0; j < pathList.length; ++j) { diff --git a/qbs/modules/libclang/libclang.qbs b/qbs/modules/libclang/libclang.qbs index 402e4922176..8adf39a220a 100644 --- a/qbs/modules/libclang/libclang.qbs +++ b/qbs/modules/libclang/libclang.qbs @@ -9,6 +9,9 @@ Module { Probe { id: clangProbe + property stringList hostOS: qbs.hostOS + property stringList targetOS: qbs.targetOS + property string llvmConfig property string llvmVersion property string llvmIncludeDir @@ -21,12 +24,12 @@ Module { property string llvmBuildMode configure: { - llvmConfig = ClangFunctions.llvmConfig(qbs, QtcFunctions); + llvmConfig = ClangFunctions.llvmConfig(hostOS, QtcFunctions); llvmVersion = ClangFunctions.version(llvmConfig); llvmIncludeDir = ClangFunctions.includeDir(llvmConfig); llvmLibDir = ClangFunctions.libDir(llvmConfig); - llvmLibs = ClangFunctions.libraries(qbs.targetOS); - llvmToolingLibs = ClangFunctions.toolingLibs(llvmConfig, qbs.targetOS); + llvmLibs = ClangFunctions.libraries(targetOS); + llvmToolingLibs = ClangFunctions.toolingLibs(llvmConfig, targetOS); llvmBuildMode = ClangFunctions.buildMode(llvmConfig); var toolingParams = ClangFunctions.toolingParameters(llvmConfig); llvmToolingDefines = toolingParams.defines;