diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-10-14 12:29:28 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-10-14 12:29:54 +0200 |
commit | 9be23eb946580519b2b0600cc854ec8050b90659 (patch) | |
tree | 63ccf0e565f346a0788d937b004e01d2ec029b5e /tools/qmake | |
parent | 4f2e66f9d898e9c11a7ad6e552d0d47bb15d4051 (diff) | |
parent | 981e38d2dc82c047c6ad8ec19427d3ac7434dc3c (diff) |
Merge remote-tracking branch 'origin/5.6' into devwip/47-based
Change-Id: I0569b04ced3456a1d5d91e02e117963115fcf1b2
Diffstat (limited to 'tools/qmake')
-rw-r--r-- | tools/qmake/mkspecs/features/configure.prf | 44 | ||||
-rw-r--r-- | tools/qmake/mkspecs/features/functions.prf | 22 |
2 files changed, 46 insertions, 20 deletions
diff --git a/tools/qmake/mkspecs/features/configure.prf b/tools/qmake/mkspecs/features/configure.prf index 321e67e92..758cd9fde 100644 --- a/tools/qmake/mkspecs/features/configure.prf +++ b/tools/qmake/mkspecs/features/configure.prf @@ -25,38 +25,47 @@ defineTest(runConfigure) { !config_libcap:skipBuild("libcap development package appears to be missing") !config_khr:skipBuild("khronos development headers appear to be missing (mesa/libegl1-mesa-dev)") - REQUIRED_PACKAGES = dbus-1 fontconfig + REQUIRED_PACKAGES = dbus-1 fontconfig freetype2 contains(QT_CONFIG, xcb): REQUIRED_PACKAGES += libdrm xcomposite xcursor xi xrandr xscrnsaver xtst contains(QT_CONFIG, pulseaudio): REQUIRED_PACKAGES += libpulse contains(QT_CONFIG, system-png): REQUIRED_PACKAGES += libpng - contains(QT_CONFIG, system-jpeg): REQUIRED_PACKAGES += libjpeg - contains(QT_CONFIG, system-harfbuzz): REQUIRED_PACKAGES += harfbuzz - !cross_compile: REQUIRED_PACKAGES += libpci nss + contains(QT_CONFIG, system-harfbuzz)|packagesExist("\'freetype2 >= 2.5.3\'"): { + WEBENGINE_CONFIG += use_system_harfbuzz + REQUIRED_PACKAGES += harfbuzz + } + !cross_compile: REQUIRED_PACKAGES += libpci for(package, $$list($$REQUIRED_PACKAGES)) { !packagesExist($$package):skipBuild("Unmet dependency: $$package") } - packagesExist(minizip, zlib): WEBENGINE_CONFIG += config_system_minizip + packagesExist(minizip, zlib): WEBENGINE_CONFIG += use_system_minizip else: log("System zlib or minizip not found. Using Chromium's copies.$${EOL}") - packagesExist(libwebp,libwebpdemux): WEBENGINE_CONFIG += config_system_libwebp + packagesExist(libwebp,libwebpdemux): WEBENGINE_CONFIG += use_system_libwebp else: log("System libwebp or libwebpdemux not found. Using Chromium's copies.$${EOL}") - packagesExist(libxml-2.0,libxslt): WEBENGINE_CONFIG += config_system_libxslt + packagesExist(libxml-2.0,libxslt): WEBENGINE_CONFIG += use_system_libxslt else: log("System libxml2 or libxslt not found. Using Chromium's copies.$${EOL}") for(package, $$list("libevent flac jsoncpp opus speex")) { - packagesExist($$package): WEBENGINE_CONFIG += config_system_$$package + packagesExist($$package): WEBENGINE_CONFIG += use_system_$$package else: log("System $$package not found. Using Chromium's copy.$${EOL}") } - packagesExist("\'vpx >= 1.4\'"): WEBENGINE_CONFIG += config_system_vpx + packagesExist("\'vpx >= 1.4\'"): WEBENGINE_CONFIG += use_system_vpx else: log("System vpx >= 1.4 not found. Using Chromium's copy.$${EOL}") - config_srtp: WEBENGINE_CONFIG += config_system_libsrtp + config_srtp: WEBENGINE_CONFIG += use_system_libsrtp else: log("System libsrtp not found. Using Chromium's copy.$${EOL}") - config_snappy: WEBENGINE_CONFIG += config_system_snappy + config_snappy: WEBENGINE_CONFIG += use_system_snappy else: log("System snappy not found. Using Chromium's copy.$${EOL}") + + # Optional dependencies + packagesExist(nss): WEBENGINE_CONFIG += use_nss + else: log("System NSS not found, BoringSSL will be used.$${EOL}") } isEmpty(skipBuildReason): { cache(CONFIG, add, $$list(webengine_successfully_configured)) - !isEmpty(WEBENGINE_CONFIG): cache(CONFIG, add, $$list($$WEBENGINE_CONFIG)) + !isEmpty(WEBENGINE_CONFIG) { + cache(WEBENGINE_CONFIG, add, $$list($$WEBENGINE_CONFIG)) + export(WEBENGINE_CONFIG) + } } } @@ -64,7 +73,12 @@ defineTest(runConfigure) { # command line options defineTest(finalizeConfigure) { linux { - contains(WEBENGINE_CONFIG, use_system_icu) { + use?(nss) { + log("SSL............................... Using system NSS$${EOL}") + } else { + log("SSL............................... Using bundled BoringSSL$${EOL}") + } + use?(system_icu) { packagesExist("icu-uc icu-i18n") { log("ICU............................... Using system version$${EOL}") } else { @@ -74,7 +88,7 @@ defineTest(finalizeConfigure) { } else { log("ICU............................... Using internal copy (Default, force system ICU with WEBENGINE_CONFIG += use_system_icu)$${EOL}") } - contains(WEBENGINE_CONFIG, use_system_ffmpeg) { + use?(system_ffmpeg) { packagesExist("libavcodec libavformat libavutil") { packagesExist("libwebp, libwebpdemux, opus, \'vpx >= 1.4\'"){ log("FFMPEG............................ Using system version$${EOL}") @@ -90,7 +104,7 @@ defineTest(finalizeConfigure) { log("FFMPEG............................ Using internal copy (Default, force system FFMPEG with WEBENGINE_CONFIG += use_system_ffmpeg)$${EOL}") } } - contains(WEBENGINE_CONFIG, use_proprietary_codecs) { + use?(proprietary_codecs) { log("Proprietary codecs (H264, MP3).... Enabled$${EOL}") } else { log("Proprietary codecs (H264, MP3).... Not enabled (Default, enable with WEBENGINE_CONFIG += use_proprietary_codecs)$${EOL}") diff --git a/tools/qmake/mkspecs/features/functions.prf b/tools/qmake/mkspecs/features/functions.prf index c0e1f90bb..99f60d0e5 100644 --- a/tools/qmake/mkspecs/features/functions.prf +++ b/tools/qmake/mkspecs/features/functions.prf @@ -22,11 +22,18 @@ defineTest(isPlatformSupported) { } defineTest(isPythonVersionSupported) { - python_major_version = $$system('python -c "import sys; print sys.version_info.major"') - python_minor_version = $$system('python -c "import sys; print sys.version_info.minor"') - lessThan(python_major_version, 3): greaterThan(python_major_version, 1): greaterThan(python_minor_version, 6): return(true) - skipBuild("Using Python version "$$python_major_version"."$$python_minor_version", but Python version 2 (2.7 or later) is required to build Qt WebEngine.") - return(false) + python_error_msg = "Python version 2 (2.7 or later) is required to build Qt WebEngine." + python_major_version = $$system('python -c "import sys; print(sys.version_info[0])"') + greaterThan(python_major_version, 2) { + skipBuild("Python version 3 is not supported by Chromium.") + skipBuild($$python_error_msg) + return(false) + } + python_minor_version = $$system('python -c "import sys; print(sys.version_info[1])"') + greaterThan(python_major_version, 1): greaterThan(python_minor_version, 6): return(true) + skipBuild("Using Python version "$$python_major_version"."$$python_minor_version".") + skipBuild($$python_error_msg) + return(false) } defineTest(isGCCVersionSupported) { @@ -142,6 +149,11 @@ defineReplace(which) { return($$out) } +defineTest(use?) { + contains(WEBENGINE_CONFIG, use_$$lower($$1)): return(true) + return(false) +} + defineReplace(findOrBuildNinja) { # If NINJA_PATH env var is set, prefer that. # Fallback to locating our own bootstrapped ninja. |