summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configure.pri7
-rw-r--r--mkspecs/features/functions.prf50
-rw-r--r--qtwebengine.pro1
-rw-r--r--src/buildtools/config/platform.pri (renamed from mkspecs/features/platform.prf)84
-rw-r--r--src/buildtools/configure.json4
-rw-r--r--src/src.pro2
6 files changed, 70 insertions, 78 deletions
diff --git a/configure.pri b/configure.pri
index 0bf4ca41a..3d6d991ba 100644
--- a/configure.pri
+++ b/configure.pri
@@ -1,5 +1,4 @@
-load(platform)
-
+include(src/buildtools/config/platform.pri)
include(src/buildtools/config/functions.pri)
# this must be done outside any function
@@ -104,7 +103,7 @@ defineTest(qtConfTest_detectBison) {
}
defineTest(qtConfTest_detectPlatform) {
- !isPlatformSupported() {
+ !qtwebengine_isPlatformSupported() {
qtLog("Platform not supported".)
return(false)
}
@@ -112,7 +111,7 @@ defineTest(qtConfTest_detectPlatform) {
}
defineTest(qtConfTest_detectArch) {
- !isArchSupported() {
+ !qtwebengine_isArchSupported() {
qtLog("Architecture not supported".)
return(false)
}
diff --git a/mkspecs/features/functions.prf b/mkspecs/features/functions.prf
index 7617005ea..b512db2f1 100644
--- a/mkspecs/features/functions.prf
+++ b/mkspecs/features/functions.prf
@@ -1,3 +1,5 @@
+include($$QTWEBENGINE_ROOT/src/buildtools/config/platform.pri)
+
defineReplace(getConfigDir) {
CONFIG(release, debug|release):return("release")
return("debug")
@@ -96,48 +98,42 @@ defineReplace(gnOS) {
return(unknown)
}
-defineTest(skipBuild) {
- isEmpty(skipBuildReason): skipBuildReason = $$1
- else: skipBuildReason = "$$skipBuildReason $${EOL}$$1"
- export(skipBuildReason)
-}
-
defineTest(isWebEngineCoreBuild) {
static {
- skipBuild("Static builds of QtWebEngine are not supported.")
+ qtwebengine_skipBuild("Static builds of QtWebEngine are not supported.")
return(false)
}
!qtHaveModule(gui) {
- skipBuild("QtWebEngine requires QtGui.")
+ qtwebengine_skipBuild("QtWebEngine requires QtGui.")
return(false)
}
!exists($$QTWEBENGINE_ROOT/src/3rdparty/chromium) {
- skipBuild("Submodule qtwebengine-chromium does not exist. Run 'git submodule update --init'.")
+ qtwebengine_skipBuild("Submodule qtwebengine-chromium does not exist. Run 'git submodule update --init'.")
return(false)
}
WSPC = $$find(OUT_PWD, \\s)
!isEmpty(WSPC) {
- skipBuild("QtWebEngine cannot be built in a path that contains whitespace characters.")
+ qtwebengine_skipBuild("QtWebEngine cannot be built in a path that contains whitespace characters.")
return(false)
}
- !isPlatformSupported() {
+ !qtwebengine_isPlatformSupported() {
# make sure we have skipBuildReason
- isEmpty(skipBuildReason): skipBuild("Unknow error. Platform unspported.")
+ isEmpty(skipBuildReason): qtwebengine_skipBuild("Unknow error. Platform unspported.")
return(false)
}
- !isArchSupported() {
- isEmpty(skipBuildReason): skipBuild("Unknown error. Architecture unsupported.")
+ !qtwebengine_isArchSupported() {
+ isEmpty(skipBuildReason): qtwebengine_skipBuild("Unknown error. Architecture unsupported.")
return(false)
}
linux:contains(QT_CONFIG,no-pkg-config) {
- skipBuild("pkg-config is required")
+ qtwebengine_skipBuild("pkg-config is required")
return(false)
}
@@ -145,65 +141,65 @@ defineTest(isWebEngineCoreBuild) {
QT_FOR_CONFIG += buildtools-private
win32:!qtConfig(webengine-win-compiler64) {
- skipBuild("Required 64-bit cross-building or native toolchain could not be found.")
+ qtwebengine_skipBuild("Required 64-bit cross-building or native toolchain could not be found.")
return(false)
}
win32:!qtConfig(webengine-winversion) {
- skipBuild("Needs Visual Studio 2017 or higher")
+ qtwebengine_skipBuild("Needs Visual Studio 2017 or higher")
return(false)
}
!qtConfig(webengine-gperf) {
- skipBuild("Required gperf could not be found.")
+ qtwebengine_skipBuild("Required gperf could not be found.")
return(false)
}
!qtConfig(webengine-bison) {
- skipBuild("Required bison could not be found.")
+ qtwebengine_skipBuild("Required bison could not be found.")
return(false)
}
!qtConfig(webengine-flex) {
- skipBuild("Required flex could not be found.")
+ qtwebengine_skipBuild("Required flex could not be found.")
return(false)
}
!qtConfig(webengine-python2) {
- skipBuild("A suitable version of python2 could not be found.")
+ qtwebengine_skipBuild("A suitable version of python2 could not be found.")
return(false)
}
sanitizer: !qtConfig(webengine-sanitizer) {
- skipBuild("Chosen sanitizer configuration is not supported. Check config.log for details or use -feature-webengine-sanitizer to force build with the chosen sanitizer configuration.")
+ qtwebengine_skipBuild("Chosen sanitizer configuration is not supported. Check config.log for details or use -feature-webengine-sanitizer to force build with the chosen sanitizer configuration.")
return(false);
}
linux {
!qtConfig(webengine-host-pkg-config) {
- skipBuild("Host pkg-config is required")
+ qtwebengine_skipBuild("Host pkg-config is required")
return(false)
}
!qtConfig(webengine-system-glibc) {
- skipBuild("A suitable version >= 2.27 of libc could not be found.")
+ qtwebengine_skipBuild("A suitable version >= 2.27 of libc could not be found.")
return(false)
}
QT_FOR_CONFIG += gui-private
!qtConfig(webengine-system-khr) {
- skipBuild("khronos development headers appear to be missing (mesa/libegl1-mesa-dev)")
+ qtwebengine_skipBuild("khronos development headers appear to be missing (mesa/libegl1-mesa-dev)")
return(false)
}
for(package, $$list("nss dbus fontconfig")) {
!qtConfig(webengine-system-$$package) {
- skipBuild("A suitable version of $$package could not be found.")
+ qtwebengine_skipBuild("A suitable version of $$package could not be found.")
return(false)
}
}
qtConfig(xcb) : !qtConfig(webengine-ozone-x11) {
- skipBuild("Could not find all necessary libraries for qpa-xcb support")
+ qtwebengine_skipBuild("Could not find all necessary libraries for qpa-xcb support")
return(false)
}
}
diff --git a/qtwebengine.pro b/qtwebengine.pro
index 6d4089b26..dae059a40 100644
--- a/qtwebengine.pro
+++ b/qtwebengine.pro
@@ -1,6 +1,5 @@
load(qt_parts)
load(functions)
-load(platform)
QMAKE_DISTCLEAN += .qmake.cache
diff --git a/mkspecs/features/platform.prf b/src/buildtools/config/platform.pri
index 05854d90f..d75c0be26 100644
--- a/mkspecs/features/platform.prf
+++ b/src/buildtools/config/platform.pri
@@ -1,98 +1,90 @@
-defineTest(isQtMinimum) {
- !equals(QT_MAJOR_VERSION, $$1): return(false)
- count(ARGS, 1, greaterThan) {
- lessThan(QT_MINOR_VERSION, $$2): return(false)
- }
- return(true)
-}
-
-defineTest(isLinuxPlatformSupported) {
+defineTest(qtwebengine_isLinuxPlatformSupported) {
!gcc|intel_icc {
- skipBuild("Qt WebEngine on Linux requires clang or GCC.")
+ qtwebengine_skipBuild("Qt WebEngine on Linux requires clang or GCC.")
return(false)
}
- gcc:!clang:!isGCCVersionSupported(): return(false)
- gcc:!contains(QT_CONFIG, c++14) {
- skipBuild("C++14 support is required in order to build chromium.")
+ gcc:!clang:!qtwebengine_isGCCVersionSupported(): return(false)
+ gcc:!qtConfig(c++14) {
+ qtwebengine_skipBuild("C++14 support is required in order to build chromium.")
return(false)
}
return(true)
}
-defineTest(isWindowsPlatformSupported) {
+defineTest(qtwebengine_isWindowsPlatformSupported) {
winrt {
- skipBuild("WinRT is not supported.")
+ qtwebengine_skipBuild("WinRT is not supported.")
return(false)
}
- isBuildingOnWin32() {
- skipBuild("Qt WebEngine on Windows must be built on a 64-bit machine.")
+ qtwebengine_isBuildingOnWin32() {
+ qtwebengine_skipBuild("Qt WebEngine on Windows must be built on a 64-bit machine.")
return(false)
}
!msvc|intel_icl {
- skipBuild("Qt WebEngine on Windows requires MSVC or Clang (MSVC mode).")
+ qtwebengine_skipBuild("Qt WebEngine on Windows requires MSVC or Clang (MSVC mode).")
return(false)
}
- !isMinWinSDKVersion(10, 17763): {
- skipBuild("Qt WebEngine on Windows requires a Windows SDK version 10.0.17763 or newer.")
+ !qtwebengine_isMinWinSDKVersion(10, 17763): {
+ qtwebengine_skipBuild("Qt WebEngine on Windows requires a Windows SDK version 10.0.17763 or newer.")
return(false)
}
return(true)
}
-defineTest(isMacOsPlatformSupported) {
+defineTest(qtwebengine_isMacOsPlatformSupported) {
# FIXME: Try to get it back down to 8.2 for building on OS X 10.11
- !isMinXcodeVersion(8, 3, 3) {
- skipBuild("Using Xcode version $$QMAKE_XCODE_VERSION, but at least version 8.3.3 is required to build Qt WebEngine.")
+ !qtwebengine_isMinXcodeVersion(8, 3, 3) {
+ qtwebengine_skipBuild("Using Xcode version $$QMAKE_XCODE_VERSION, but at least version 8.3.3 is required to build Qt WebEngine.")
return(false)
}
!clang|intel_icc {
- skipBuild("Qt WebEngine on macOS requires Clang.")
+ qtwebengine_skipBuild("Qt WebEngine on macOS requires Clang.")
return(false)
}
# We require macOS 10.12 (darwin version 16.0.0) or newer.
darwin_major_version = $$section(QMAKE_HOST.version, ., 0, 0)
lessThan(darwin_major_version, 16) {
- skipBuild("Building Qt WebEngine requires macOS version 10.12 or newer.")
+ qtwebengine_skipBuild("Building Qt WebEngine requires macOS version 10.12 or newer.")
return(false)
}
- !isMinOSXSDKVersion(10, 12): {
- skipBuild("Building Qt WebEngine requires a macOS SDK version of 10.12 or newer. Current version is $${WEBENGINE_OSX_SDK_PRODUCT_VERSION}.")
+ !qtwebengine_isMinOSXSDKVersion(10, 12): {
+ qtwebengine_skipBuild("Building Qt WebEngine requires a macOS SDK version of 10.12 or newer. Current version is $${WEBENGINE_OSX_SDK_PRODUCT_VERSION}.")
return(false)
}
return(true)
}
-defineTest(isPlatformSupported) {
+defineTest(qtwebengine_isPlatformSupported) {
QT_FOR_CONFIG += gui-private
!linux:!win32:!macos {
- skipBuild("Unknown platform. Qt WebEngine only supports Linux, Windows, and macOS.")
+ qtwebengine_skipBuild("Unknown platform. Qt WebEngine only supports Linux, Windows, and macOS.")
return(false)
}
- linux:isLinuxPlatformSupported(): return(true)
- win32:isWindowsPlatformSupported(): return(true)
- macos:isMacOsPlatformSupported(): return(true)
+ linux:qtwebengine_isLinuxPlatformSupported(): return(true)
+ win32:qtwebengine_isWindowsPlatformSupported(): return(true)
+ macos:qtwebengine_isMacOsPlatformSupported(): return(true)
return(false)
}
-defineTest(isArchSupported) {
+defineTest(qtwebengine_isArchSupported) {
contains(QT_ARCH, "i386")|contains(QT_ARCH, "x86_64"): return(true)
contains(QT_ARCH, "arm")|contains(QT_ARCH, "arm64"): return(true)
contains(QT_ARCH, "mips"): return(true)
# contains(QT_ARCH, "mips64"): return(true)
- skipBuild("QtWebEngine can only be built for x86, x86-64, ARM, Aarch64, and MIPSel architectures.")
+ qtwebengine_skipBuild("QtWebEngine can only be built for x86, x86-64, ARM, Aarch64, and MIPSel architectures.")
return(false)
}
-defineTest(isGCCVersionSupported) {
+defineTest(qtwebengine_isGCCVersionSupported) {
# Keep in sync with src/webengine/doc/src/qtwebengine-platform-notes.qdoc
- greaterThan(QT_GCC_MAJOR_VERSION, 4):return(true)
+ greaterThan(QMAKE_GCC_MAJOR_VERSION, 4):return(true)
- skipBuild("Using gcc version "$$QT_GCC_MAJOR_VERSION"."$$QT_GCC_MINOR_VERSION", but at least gcc version 5 is required to build Qt WebEngine.")
+ qtwebengine_skipBuild("Using gcc version "$$QMAKE_GCC_MAJOR_VERSION"."$$QMAKE_GCC_MINOR_VERSION", but at least gcc version 5 is required to build Qt WebEngine.")
return(false)
}
-defineTest(isBuildingOnWin32) {
+defineTest(qtwebengine_isBuildingOnWin32) {
# The check below is ugly, but necessary, as it seems to be the only reliable way to detect if the host
# architecture is 32 bit. QMAKE_HOST.arch does not work as it returns the architecture that the toolchain
# is building for, not the system's actual architecture.
@@ -101,7 +93,7 @@ defineTest(isBuildingOnWin32) {
return(false)
}
-defineTest(isMinOSXSDKVersion) {
+defineTest(qtwebengine_isMinOSXSDKVersion) {
requested_major = $$1
requested_minor = $$2
requested_patch = $$3
@@ -109,7 +101,7 @@ defineTest(isMinOSXSDKVersion) {
WEBENGINE_OSX_SDK_PRODUCT_VERSION = $$system("/usr/bin/xcodebuild -sdk $$QMAKE_MAC_SDK -version ProductVersion 2>/dev/null")
export(WEBENGINE_OSX_SDK_PRODUCT_VERSION)
isEmpty(WEBENGINE_OSX_SDK_PRODUCT_VERSION) {
- skipBuild("Could not resolve SDK product version for \'$$QMAKE_MAC_SDK\'.")
+ qtwebengine_skipBuild("Could not resolve SDK product version for \'$$QMAKE_MAC_SDK\'.")
return(false)
}
major_version = $$section(WEBENGINE_OSX_SDK_PRODUCT_VERSION, ., 0, 0)
@@ -124,7 +116,7 @@ defineTest(isMinOSXSDKVersion) {
return(false)
}
-defineTest(isMinXcodeVersion) {
+defineTest(qtwebengine_isMinXcodeVersion) {
requested_major = $$1
requested_minor = $$2
requested_patch = $$3
@@ -144,13 +136,13 @@ defineTest(isMinXcodeVersion) {
return(false)
}
-defineTest(isMinWinSDKVersion) {
+defineTest(qtwebengine_isMinWinSDKVersion) {
requested_major = $$1
requested_minor = $$2
WIN_SDK_VERSION = $$(WindowsSDKVersion)
isEmpty(WIN_SDK_VERSION)|equals(WIN_SDK_VERSION, "\\") {
- skipBuild("Could not detect Windows SDK version (\'WindowsSDKVersion\' environment variable is not set).")
+ qtwebengine_skipBuild("Could not detect Windows SDK version (\'WindowsSDKVersion\' environment variable is not set).")
return(false)
}
@@ -164,3 +156,9 @@ defineTest(isMinWinSDKVersion) {
return(false)
}
+
+defineTest(qtwebengine_skipBuild) {
+ isEmpty(skipBuildReason): skipBuildReason = $$1
+ else: skipBuildReason = "$$skipBuildReason $${EOL}$$1"
+ export(skipBuildReason)
+}
diff --git a/src/buildtools/configure.json b/src/buildtools/configure.json
index 3e7c2cd5d..05a05bb4a 100644
--- a/src/buildtools/configure.json
+++ b/src/buildtools/configure.json
@@ -685,12 +685,12 @@
{
"type": "skipBuildWarning",
"condition": "tests.webengine-platform",
- "message": "isPlatformSupported"
+ "message": "qtwebengine_isPlatformSupported"
},
{
"type": "skipBuildWarning",
"condition": "tests.webengine-architecture",
- "message": "isArchSupported"
+ "message": "qtwebengine_isArchSupported"
}
],
"summary": [
diff --git a/src/src.pro b/src/src.pro
index e620fcdd8..31b91ccab 100644
--- a/src/src.pro
+++ b/src/src.pro
@@ -1,4 +1,4 @@
-load(platform)
+load(functions)
include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri)
include($$QTWEBENGINE_OUT_ROOT/src/core/qtwebenginecore-config.pri)