summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Wicking <paul.wicking@qt.io>2018-12-13 15:12:34 +0100
committerSimon Hausmann <simon.hausmann@qt.io>2018-12-17 08:16:53 +0000
commit239a48f17654f223e0ce9fc4cba31a92c88933c3 (patch)
treee44ea19f5ab4c71620d8861f216588fb2c616d6b
parentb309d4a67934454e64bb93a291e477797051ab8e (diff)
downloadqttools-239a48f17654f223e0ce9fc4cba31a92c88933c3.tar.gz
Try multiple llvm-config candidates when configuring QDoc
As llvm-config may be installed as e.g. llvm-config-6.0 on certain systems, depending on which packages are installed, check them in order latest to oldest version supported. Task-number: QTBUG-65762 Change-Id: Ide2f25b5fa73b3da6ea16186aad09b2fec6f0494 Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
-rw-r--r--src/qdoc/configure.pri21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/qdoc/configure.pri b/src/qdoc/configure.pri
index 1d79230e1..8fd43401a 100644
--- a/src/qdoc/configure.pri
+++ b/src/qdoc/configure.pri
@@ -53,8 +53,26 @@ defineTest(qtConfTest_libclang) {
}
}
isEmpty(LLVM_INSTALL_DIR): LLVM_INSTALL_DIR = $$(LLVM_INSTALL_DIR)
+
# Assume libclang is installed on the target system
- isEmpty(LLVM_INSTALL_DIR): LLVM_INSTALL_DIR = $$system("llvm-config --prefix 2>$$QMAKE_SYSTEM_NULL_DEVICE")
+ isEmpty(LLVM_INSTALL_DIR) {
+ llvmConfigCandidates = \
+ llvm-config-7 \
+ llvm-config-6.0 \
+ llvm-config-5.0 \
+ llvm-config-4.0 \
+ llvm-config-3.9 \
+ llvm-config
+
+ for (candidate, llvmConfigCandidates) {
+ LLVM_INSTALL_DIR = $$system("$$candidate --prefix 2>$$QMAKE_SYSTEM_NULL_DEVICE")
+ !isEmpty(LLVM_INSTALL_DIR) {
+ qtLog("Using Clang installation found in $${LLVM_INSTALL_DIR}." \
+ "Set the LLVM_INSTALL_DIR environment variable to override.")
+ break()
+ }
+ }
+ }
LLVM_INSTALL_DIR = $$clean_path($$LLVM_INSTALL_DIR)
contains(QMAKE_HOST.arch, x86_64): \
@@ -312,7 +330,6 @@ defineTest(qtConfTest_libclang) {
!versionIsAtLeast($$CLANG_VERSION, "3.9.0") {
log("LLVM/Clang version >= 3.9.0 required, version provided: $${CLANG_VERSION}.$$escape_expand(\\n)")
- log("Clang was found in $${clangInstallDir}. Set the LLVM_INSTALL_DIR environment variable to override.$$escape_expand(\\n)")
return(false)
}