diff options
author | Michal Klocek <michal.klocek@qt.io> | 2019-08-14 12:05:50 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2019-09-07 19:53:17 +0000 |
commit | 8684373c08a774a7ed23682a358de991b8775ddd (patch) | |
tree | 2ac9cd772a77e949b629f11447ed8b332ddf3417 /configure.json | |
parent | f7032b40a28f844e4a94633bbc077b1953ef0ed4 (diff) |
Move main configure and move some tests from core to buildtools
Processing configuration for gn when building qpdfcore module
will require optional libraries resolved. Some libs are not needed,
but this requires extra patching of gn build configs; so
to keep things simple, just detect all the libs beforehand.
Unfortunately using this for main configure goes bonkers.
The issue here is that main configure resets features in global scope,
which can break features coming from qtbase and results in
bogus configurations in certain cases. Therefore move current
configuration to buildtools and make everything else depend on this.
Task-number: QTBUG-75840
Task-number: QTBUG-76606
Change-Id: Id87f5ba017541a2d5a2836510c6cabc5a19f92c6
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'configure.json')
-rw-r--r-- | configure.json | 347 |
1 files changed, 1 insertions, 346 deletions
diff --git a/configure.json b/configure.json index 4b9288bbb..8caad24f0 100644 --- a/configure.json +++ b/configure.json @@ -1,353 +1,8 @@ { - "files": { - "privatePro": "src/qtwebengine-main-config.pri" - }, - "subconfigs": [ + "src/buildtools", "src/core", "src/webengine", "src/webenginewidgets" - ], - "commandline": { - "options": { - "webengine-core": "boolean", - "webengine-jumbo-build": { "type": "optionalString", "name": "merge_limit"} - } - }, - "libraries": { - "webengine-dbus": { - "label": "d-bus", - "sources": [ - { "type": "pkgConfig", "args": "dbus-1" } - ] - }, - "webengine-fontconfig": { - "label": "fontconfig", - "sources": [ - { "type": "pkgConfig", "args": "fontconfig" } - ] - }, - "webengine-libdrm": { - "label": "libdrm", - "sources": [ - { "type": "pkgConfig", "args": "libdrm" } - ] - }, - "webengine-xcomposite": { - "label": "xcomposite", - "sources": [ - { "type": "pkgConfig", "args": "xcomposite" } - ] - }, - "webengine-xcursor": { - "label": "xcursor", - "sources": [ - { "type": "pkgConfig", "args": "xcursor" } - ] - }, - "webengine-xi": { - "label": "xi", - "sources": [ - { "type": "pkgConfig", "args": "xi" } - ] - }, - "webengine-xtst": { - "label": "xtst", - "sources": [ - { "type": "pkgConfig", "args": "xtst" } - ] - }, - "webengine-nss": { - "label": "nss >= 3.26", - "sources": [ - { "type": "pkgConfig", "args": "nss >= 3.26" } - ] - }, - "webengine-x11" : { - "label" : "x11", - "sources": [ - { "type": "pkgConfig", "args": "x11" } - ] - } - }, - - "testDir": "config.tests", - "tests" : { - "webengine-bison": { - "label": "bison", - "type": "detectBison" - }, - "webengine-flex": { - "label": "flex", - "type": "detectFlex" - }, - "webengine-gn": { - "label": "system gn", - "type": "detectGn" - }, - "webengine-glibc": { - "label": "glibc > 2.26", - "type": "compile", - "test": { - "include": "features.h", - "tail": [ - "#if __GLIBC__ < 2 || __GLIBC_MINOR__ < 27", - "#error glibc versions below 2.27 are not supported", - "#endif" - ] - } - }, - "webengine-gperf": { - "label": "gperf", - "type": "detectGperf" - }, - "webengine-khr": { - "label": "khr", - "type": "compile", - "test": { - "include": "KHR/khrplatform.h", - "qmake" : [ - "!isEmpty(QMAKE_INCDIR_EGL): INCLUDEPATH += $$QMAKE_INCDIR_EGL", - "!isEmpty(QMAKE_INCDIR_OPENGL): INCLUDEPATH += $$QMAKE_INCDIR_OPENGL" - ] - } - }, - "webengine-ninja": { - "label": "system ninja", - "type": "detectNinja" - }, - "webengine-python2": { - "label": "python2", - "type": "detectPython2", - "log": "location" - }, - "webengine-winversion": { - "label": "winversion", - "type": "compile", - "test": { - "head" : [ - "#if !defined(__clang__) && _MSC_FULL_VER < 191426428", - "#error unsupported Visual Studio version", - "#endif" - ] - } - }, - "webengine-host-pkg-config": { - "label": "host pkg-config", - "type": "detectHostPkgConfig", - "log": "path" - }, - "webengine-xcb": { - "label": "qtbase xcb", - "type": "detectXcb" - }, - "webengine-jumbo-build": { - "label": "jumbo build merge limit", - "type": "detectJumboBuild", - "log": "merge_limit" - } - }, - "features": { - "webengine-core": { - "label": "Support Qt WebEngine Core", - "purpose": "Provides WebEngine Core support.", - "condition": "module.gui - && features.webengine-python2 - && features.webengine-gperf - && features.webengine-bison - && features.webengine-flex - && (!tests.webengine-xcb || features.webengine-ozone-x11)", - "output": [ "privateFeature" ] - }, - "webengine-python2": { - "label": "python2", - "condition": "tests.webengine-python2", - "output": [ - "privateFeature", - { "type": "varAssign", "name": "QMAKE_PYTHON2", "value": "tests.webengine-python2.location" } - ] - }, - "webengine-gperf": { - "label": "gperf", - "condition": "tests.webengine-gperf", - "output": [ "privateFeature" ] - }, - "webengine-bison": { - "label": "bison", - "condition": "tests.webengine-bison", - "output": [ "privateFeature" ] - }, - "webengine-flex": { - "label": "flex", - "condition": "tests.webengine-flex", - "output": [ "privateFeature" ] - }, - "webengine-system-ninja": { - "label": "Use System Ninja", - "condition": "tests.webengine-ninja", - "output": [ "privateFeature" ] - }, - "webengine-system-fontconfig": { - "label": "fontconfig", - "condition": "libs.webengine-fontconfig", - "output": [ "privateFeature" ] - }, - "webengine-system-dbus": { - "label": "dbus", - "condition": "libs.webengine-dbus", - "output": [ "privateFeature" ] - }, - "webengine-system-libdrm": { - "label": "libdrm", - "condition": "libs.webengine-libdrm", - "output": [ "privateFeature" ] - }, - "webengine-system-xcomposite": { - "label": "xcomposite", - "condition": "libs.webengine-xcomposite", - "output": [ "privateFeature" ] - }, - "webengine-system-xcursor": { - "label": "xcursor", - "condition": "libs.webengine-xcursor", - "output": [ "privateFeature" ] - }, - "webengine-system-xi": { - "label": "xi", - "condition": "libs.webengine-xi", - "output": [ "privateFeature" ] - }, - "webengine-system-xtst": { - "label": "xtst", - "condition": "libs.webengine-xtst", - "output": [ "privateFeature" ] - }, - "webengine-system-gn": { - "label": "Use System Gn", - "autoDetect": "false", - "condition": "tests.webengine-gn", - "output": [ "privateFeature" ] - }, - "webengine-system-khr" : { - "label": "khr", - "condition": "config.unix && tests.webengine-khr", - "output": [ "privateFeature" ] - }, - "webengine-system-nss": { - "label": "nss", - "condition": "config.unix && !config.darwin && libs.webengine-nss", - "output": [ "privateFeature" ] - }, - "webengine-system-glibc": { - "label": "glibc", - "condition": "config.linux && tests.webengine-glibc", - "output": [ "privateFeature" ] - }, - "webengine-system-x11" : { - "label": "x11", - "condition": "config.unix && libs.webengine-x11", - "output": [ "privateFeature" ] - }, - "webengine-host-pkg-config": { - "label": "host-pkg-config", - "condition": "config.unix && tests.webengine-host-pkg-config", - "output": [ - "privateFeature", - { "type": "varAssign", "name": "QMAKE_PKG_CONFIG_HOST", "value": "tests.webengine-host-pkg-config.path" } - ] - }, - "webengine-ozone-x11" : { - "label": "Support qpa-xcb", - "condition": "config.unix - && tests.webengine-xcb - && features.webengine-system-x11 - && features.webengine-system-libdrm - && features.webengine-system-xcomposite - && features.webengine-system-xcursor - && features.webengine-system-xi - && features.webengine-system-xtst", - "output": [ "privateFeature" ] - }, - "webengine-winversion" : { - "label": "winversion", - "condition": "config.win32 && tests.webengine-winversion", - "output": [ "privateFeature" ] - }, - "webengine-jumbo-build": { - "label": "jumbo build merge batch", - "condition": "tests.webengine-jumbo-build", - "output": [ - "privateFeature", - { "type": "varAssign", "name": "QMAKE_JUMBO_MERGE_LIMIT", "value": "tests.webengine-jumbo-build.merge_limit" } - ] - } - }, - "report": [ - { - "type": "warning", - "condition": "!module.gui", - "message": "QtWebEngine requires QtGui." - }, - { - "type": "warning", - "condition": "!features.webengine-python2", - "message": "Python version 2 (2.7.5 or later) is required to build QtWebEngine." - }, - { - "type": "warning", - "condition": "!features.webengine-gperf", - "message": "gperf is required to build QtWebEngine." - }, - { - "type": "warning", - "condition": "!features.webengine-bison", - "message": "bison is required to build QtWebEngine." - }, - { - "type": "warning", - "condition": "!features.webengine-flex", - "message": "flex is required to build QtWebEngine." - }, - { - "type": "warning", - "condition": "config.linux && !features.webengine-ozone-x11 && tests.webengine-xcb", - "message": "Could not find all necessary libraries for qpa-xcb support." - } - ], - "summary": [ - { - "section": "Build Tools", - "entries": [ - "webengine-system-ninja", - "webengine-system-gn", - { - "message": "Jumbo Build Merge Limit", - "type": "jumboBuild" - } - ] - }, - { - "section": "Required system libraries", - "condition": "config.unix && !config.macos && features.webengine-core", - "entries": [ - "webengine-system-fontconfig", - "webengine-system-dbus", - "webengine-system-nss", - "webengine-system-khr", - "webengine-system-glibc" - ] - }, - { - "section": "Required system libraries for qpa-xcb", - "condition": "config.unix && !config.macos && features.webengine-core", - "entries": [ - "webengine-system-x11", - "webengine-system-libdrm", - "webengine-system-xcomposite", - "webengine-system-xcursor", - "webengine-system-xi", - "webengine-system-xtst" - ] - } ] } |