summaryrefslogtreecommitdiffstats
path: root/configure.pri
diff options
context:
space:
mode:
Diffstat (limited to 'configure.pri')
-rw-r--r--configure.pri316
1 files changed, 0 insertions, 316 deletions
diff --git a/configure.pri b/configure.pri
deleted file mode 100644
index 897bea540..000000000
--- a/configure.pri
+++ /dev/null
@@ -1,316 +0,0 @@
-include(src/core/config/functions.pri)
-
-# this must be done outside any function
-QTWEBENGINE_SOURCE_TREE = $$PWD
-
-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$$EXE_SUFFIX")
- isEmpty(python) {
- qtLog("'python2$$EXE_SUFFIX' not found in PATH. Checking for 'python$$EXE_SUFFIX'.")
- 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)
-}
-
-defineReplace(qtConfFindGnuTool) {
- equals(QMAKE_HOST.os, Windows) {
- gnuwin32bindir = $$absolute_path($$QTWEBENGINE_SOURCE_TREE/../gnuwin32/bin)
- gnuwin32toolpath = "$$gnuwin32bindir/$${1}"
- exists($$gnuwin32toolpath): \
- return($$gnuwin32toolpath)
- }
- return($$qtConfFindInPath($$1))
-}
-
-defineTest(qtConfTest_detectGperf) {
- gperf = $$qtConfFindGnuTool("gperf$$EXE_SUFFIX")
- isEmpty(gperf) {
- qtLog("Required gperf could not be found.")
- return(false)
- }
- qtLog("Found gperf from path: $$gperf")
- return(true)
-}
-
-defineTest(qtConfTest_detectBison) {
- bison = $$qtConfFindGnuTool("bison$$EXE_SUFFIX")
- isEmpty(bison) {
- qtLog("Required bison could not be found.")
- return(false)
- }
- qtLog("Found bison from path: $$bison")
- return(true)
-}
-
-defineTest(qtConfTest_detectFlex) {
- flex = $$qtConfFindGnuTool("flex$$EXE_SUFFIX")
- isEmpty(flex) {
- qtLog("Required flex could not be found.")
- return(false)
- }
- qtLog("Found flex from path: $$flex")
- return(true)
-}
-
-defineTest(qtConfTest_detectGlibc) {
- ldd = $$qtConfFindInPath("ldd")
- !isEmpty(ldd) {
- qtLog("Found ldd from path: $$ldd")
- qtRunLoggedCommand("$$ldd --version", version)|return(true)
- version ~= 's/^.*[^0-9]\([0-9]*\.[0-9]*\).*$/\1/'
- version = $$first(version)
- qtLog("Found libc version: $$version")
- version = $$split(version,'.')
- version = $$member(version, 1)
- greaterThan(version, 16) {
- return(true)
- }
- qtLog("Detected too old version of glibc. Required min 2.17.")
- return(false)
- }
- qtLog("No ldd found. Assuming right version of glibc.")
- return(true)
-}
-
-defineTest(qtConfTest_detectNinja) {
- ninja = $$qtConfFindInPath("ninja$$EXE_SUFFIX")
- !isEmpty(ninja) {
- qtLog("Found ninja from path: $$ninja")
- qtRunLoggedCommand("$$ninja --version", version)|return(false)
- contains(version, "1.[7-9].*"): return(true)
- qtLog("Ninja version too old")
- }
- qtLog("Building own ninja")
- return(false)
-}
-
-defineTest(qtConfTest_detectProtoc) {
- protoc = $$qtConfFindInPath("protoc")
- isEmpty(protoc) {
- qtLog("Optional protoc could not be found.")
- return(false)
- }
- qtLog("Found protoc from path: $$protoc")
- return(true)
-}
-
-defineTest(qtConfTest_detectGn) {
- gn = $$qtConfFindInPath("gn$$EXE_SUFFIX")
- !isEmpty(gn) {
- qtRunLoggedCommand("$$gn --version", version)|return(false)
- #accept all for now
- contains(version, ".*"): return(true)
- qtLog("Gn version too old")
- }
- qtLog("Building own gn")
- return(false)
-}
-
-defineTest(qtConfTest_embedded) {
- lessThan(QT_MINOR_VERSION, 9) {
- cross_compile: return(true)
- return(false)
- }
- $$qtConfEvaluate("features.cross_compile"): return(true)
- return(false)
-}
-
-defineTest(qtConfTest_detectHostPkgConfig) {
- PKG_CONFIG = $$qtConfPkgConfig(true)
- isEmpty(PKG_CONFIG) {
- qtLog("Could not find host pkg-config")
- return(false)
- }
- qtLog("Found host pkg-config: $$PKG_CONFIG")
- $${1}.path = $$PKG_CONFIG
- export($${1}.path)
- $${1}.cache += path
- export($${1}.cache)
- return(true)
-}
-
-defineTest(qtConfTest_isSanitizerSupported) {
- sanitizer_combo_supported = true
-
- sanitize_address {
- asan_supported = false
- linux-clang-libc++:isSanitizerSupportedOnLinux() {
- asan_supported = true
- } else:macos:isSanitizerSupportedOnMacOS() {
- asan_supported = true
- }
- !$$asan_supported {
- sanitizer_combo_supported = false
- qtLog("An address sanitizer-enabled Qt WebEngine build can only be built on Linux or macOS using Clang and libc++.")
- }
- }
-
- sanitize_memory {
- sanitizer_combo_supported = false
- qtLog("A memory sanitizer-enabled Qt WebEngine build is not supported.")
- }
-
- sanitize_undefined {
- ubsan_supported = false
- CONFIG(release, debug|release):!debug_and_release {
- linux-clang-libc++:isSanitizerSupportedOnLinux() {
- ubsan_supported = true
- } else:macos:isSanitizerSupportedOnMacOS() {
- ubsan_supported = true
- }
- }
- !$$ubsan_supported {
- sanitizer_combo_supported = false
- qtLog("An undefined behavior sanitizer-enabled Qt WebEngine build can only be built on Linux or macOS using Clang and libc++ in release mode.")
- }
- }
-
- sanitize_thread {
- tsan_supported = false
- linux-clang-libc++:isSanitizerSupportedOnLinux() {
- tsan_supported = true
- }
- !$$tsan_supported {
- sanitizer_combo_supported = false
- qtLog("A thread sanitizer-enabled Qt WebEngine build can only be built on Linux using Clang and libc++.")
- }
- }
-
- $$sanitizer_combo_supported: return(true)
- return(false)
-}
-
-defineTest(isSanitizerSupportedOnLinux) {
- isSanitizerLinuxClangVersionSupported(): return(true)
- return(false)
-}
-
-defineTest(isSanitizerSupportedOnMacOS) {
- isEmpty(QMAKE_APPLE_CLANG_MAJOR_VERSION) {
- QTWEBENGINE_CLANG_IS_APPLE = false
- } else {
- QTWEBENGINE_CLANG_IS_APPLE = true
- }
-
- $$QTWEBENGINE_CLANG_IS_APPLE:isSanitizerMacOSAppleClangVersionSupported(): return(true)
- else:isSanitizerMacOSClangVersionSupported(): return(true)
- return(false)
-}
-
-defineTest(isSanitizerMacOSAppleClangVersionSupported) {
- # Clang sanitizer suppression attributes work from Apple Clang version 7.3.0+.
- greaterThan(QMAKE_APPLE_CLANG_MAJOR_VERSION, 7): return(true)
- greaterThan(QMAKE_APPLE_CLANG_MINOR_VERSION, 2): return(true)
-
- qtLog("Using Apple Clang version $${QMAKE_APPLE_CLANG_MAJOR_VERSION}.$${QMAKE_APPLE_CLANG_MINOR_VERSION}.$${QMAKE_APPLE_CLANG_PATCH_VERSION}, but at least Apple Clang version 7.3.0 is required to build a sanitizer-enabled Qt WebEngine.")
- return(false)
-}
-
-defineTest(isSanitizerMacOSClangVersionSupported) {
- # Clang sanitizer suppression attributes work from non-apple Clang version 3.7+.
- greaterThan(QMAKE_CLANG_MAJOR_VERSION, 3): return(true)
- greaterThan(QMAKE_CLANG_MINOR_VERSION, 6): return(true)
-
- qtLog("Using Clang version $${QMAKE_CLANG_MAJOR_VERSION}.$${QMAKE_CLANG_MINOR_VERSION}, but at least Clang version 3.7 is required to build a sanitizer-enabled Qt WebEngine.")
- return(false)
-}
-
-defineTest(isSanitizerLinuxClangVersionSupported) {
- # Clang sanitizer suppression attributes work from Clang version 3.7+.
- greaterThan(QMAKE_CLANG_MAJOR_VERSION, 3): return(true)
- greaterThan(QMAKE_CLANG_MINOR_VERSION, 6): return(true)
-
- qtLog("Using Clang version $${QMAKE_CLANG_MAJOR_VERSION}.$${QMAKE_CLANG_MINOR_VERSION}, but at least Clang version 3.7 is required to build a sanitizer-enabled Qt WebEngine.")
- return(false)
-}
-
-defineReplace(qtConfFunc_isTestsInBuildParts) {
- contains(QT_BUILD_PARTS, tests): return(true)
- return(false)
-}
-
-defineReplace(webEngineGetMacOSVersion) {
- value = $$system("sw_vers -productVersion 2>/dev/null")
- return($$value)
-}
-
-defineReplace(webEngineGetMacOSSDKVersion) {
- value = $$system("/usr/bin/xcodebuild -sdk $$QMAKE_MAC_SDK -version ProductVersion 2>/dev/null")
- return($$value)
-}
-
-defineReplace(webEngineGetMacOSClangVerboseVersion) {
- output = $$system("$$QMAKE_CXX --version 2>/dev/null", lines)
- value = $$first(output)
- return($$value)
-}
-
-defineTest(qtConfReport_macosToolchainVersion) {
- arg = $$2
- contains(arg, "macosVersion"): report_message = $$webEngineGetMacOSVersion()
- contains(arg, "xcodeVersion"): report_message = "$$QMAKE_XCODE_VERSION"
- contains(arg, "clangVersion"): report_message = $$webEngineGetMacOSClangVerboseVersion()
- contains(arg, "sdkVersion"): report_message = $$webEngineGetMacOSSDKVersion()
- contains(arg, "deploymentTarget"): report_message = "$$QMAKE_MACOSX_DEPLOYMENT_TARGET"
- !isEmpty(report_message): qtConfReportPadded($$1, $$report_message)
-}
-
-defineTest(qtConfTest_isWindowsHostCompiler64) {
- win_host_arch = $$(VSCMD_ARG_HOST_ARCH)
- isEmpty(win_host_arch): return(true)
- contains(win_host_arch,"x64"): return(true)
- qtLog("Required 64-bit cross-building or native toolchain was not detected.")
- return(false)
-}
-
-# Fixme QTBUG-71772
-defineTest(qtConfTest_hasThumbFlag) {
- FLAG = $$qtwebengine_extractCFlag("-mthumb")
- !isEmpty(FLAG): return(true)
- FLAG = $$qtwebengine_extractCFlag("-marm")
- !isEmpty(FLAG): return(false)
-
- MARCH = $$qtwebengine_extractCFlag("-march=.*")
- MARMV = $$replace(MARCH, "armv",)
- !isEmpty(MARMV) {
- MARMV = $$split(MARMV,)
- MARMV = $$member(MARMV, 0)
- }
- if (isEmpty(MARMV) | lessThan(MARMV, 7)): return(false)
- # no flag assume mthumb
- return(true)
-}