diff options
author | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-05-05 11:15:06 +0200 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-05-05 11:15:06 +0200 |
commit | 028bd20e41fc1995c34ca4c19e5342ff3efe0c6a (patch) | |
tree | 71aa1e77a262ba2d2a72dc6ac8f5c5c3a26567f2 /configure.pri | |
parent | 4ea591e7efdb63c26372af4af9507c5f57b42fcc (diff) | |
parent | b24a6419869c14e32e87cb97e529cc25c246b5e0 (diff) |
Merge 5.9 into 5.9.0v5.9.0-beta4
Change-Id: If450c073521057241f34ed9b9a7f9965c6752a15
Diffstat (limited to 'configure.pri')
-rw-r--r-- | configure.pri | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/configure.pri b/configure.pri index 23f31686e..ce36642bb 100644 --- a/configure.pri +++ b/configure.pri @@ -1,5 +1,46 @@ equals(QMAKE_HOST.os, Windows): EXE_SUFFIX = .exe +defineTest(isPythonVersionSupported) { + python = $$system_quote($$system_path($$1)) + python_version = $$system('$$python -c "import sys; print(sys.version_info[0:3])"') + python_version ~= s/[()]//g + python_version = $$split(python_version, ',') + python_major_version = $$first(python_version) + greaterThan(python_major_version, 2) { + qtLog("Python version 3 is not supported by Chromium.") + return(false) + } + python_minor_version = $$member(python_version, 1) + python_patch_version = $$member(python_version, 2) + greaterThan(python_major_version, 1): greaterThan(python_minor_version, 6): greaterThan(python_patch_version, 4): return(true) + qtLog("Unsupported python version: $${python_major_version}.$${python_minor_version}.$${python_patch_version}.") + return(false) +} + +defineTest(qtConfTest_detectPython2) { + python = $$qtConfFindInPath("python2") + isEmpty(python) { + qtLog("'python2' not found in PATH. Checking for 'python'.") + python = $$qtConfFindInPath("python$$EXE_SUFFIX") + } + isEmpty(python) { + qtLog("'python$$EXE_SUFFIX' not found in PATH. Giving up.") + return(false) + } + !isPythonVersionSupported($$python) { + qtLog("A suitable Python 2 executable could not be located.") + return(false) + } + + # Make tests.python2.location available in configure.json. + $${1}.location = $$clean_path($$python) + export($${1}.location) + $${1}.cache += location + export($${1}.cache) + + return(true) +} + defineTest(qtConfTest_detectNinja) { ninja = $$qtConfFindInPath("ninja$$EXE_SUFFIX") !isEmpty(ninja) { |