summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorMichael Bruning <michael.bruning@theqtcompany.com>2016-03-22 17:09:51 +0100
committerMichael Bruning <michael.bruning@theqtcompany.com>2016-03-22 17:13:00 +0100
commit51b887576cdfc5ababb368a62a9f96df47e9ce1c (patch)
treeca39ba8ee1ee9a14582e0da911ade6208133f438 /tools
parent23f7e8bb628c60a5f62764e7f3f87f8799be7959 (diff)
parent7794aadf9076774296c38743e3be69dd6143d0da (diff)
Merge remote-tracking branch 'origin/5.7' into dev
Diffstat (limited to 'tools')
-rw-r--r--tools/qmake/mkspecs/features/configure.prf15
-rw-r--r--tools/qmake/mkspecs/features/default_pre.prf3
-rw-r--r--tools/qmake/mkspecs/features/functions.prf37
-rwxr-xr-xtools/scripts/take_snapshot.py12
-rw-r--r--tools/scripts/version_resolver.py4
5 files changed, 65 insertions, 6 deletions
diff --git a/tools/qmake/mkspecs/features/configure.prf b/tools/qmake/mkspecs/features/configure.prf
index 5674ea3a5..7703e3414 100644
--- a/tools/qmake/mkspecs/features/configure.prf
+++ b/tools/qmake/mkspecs/features/configure.prf
@@ -41,10 +41,16 @@ defineTest(runConfigure) {
else: log("System libwebp or libwebpdemux not found. Using Chromium's copies.$${EOL}")
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 jsoncpp opus")) {
+ for(package, $$list("libevent jsoncpp opus protobuf")) {
packagesExist($$package): WEBENGINE_CONFIG += use_system_$$package
else: log("System $$package not found. Using Chromium's copy.$${EOL}")
}
+ use?(system_protobuf) {
+ !system("which protoc > /dev/null") {
+ log("Protobuf compiler not found. Using Chromium's copy of protobuf.$${EOL}")
+ WEBENGINE_CONFIG -= use_system_protobuf
+ }
+ }
config_libvpx: WEBENGINE_CONFIG += use_system_vpx
else: log("Compatible system libvpx not found. Using Chromium's copy.$${EOL}")
config_srtp: WEBENGINE_CONFIG += use_system_libsrtp
@@ -107,5 +113,12 @@ defineTest(finalizeConfigure) {
} else {
log("Proprietary codecs (H264, MP3).... Not enabled (Default, enable with WEBENGINE_CONFIG += use_proprietary_codecs)$${EOL}")
}
+ osx {
+ use?(appstore_compliant_code) {
+ log("AppStore Compliant ............... Enabled$${EOL}")
+ } else {
+ log("AppStore Compliant ............... Not enabled (Default, enable with WEBENGINE_CONFIG += use_appstore_compliant_code)$${EOL}")
+ }
+ }
}
diff --git a/tools/qmake/mkspecs/features/default_pre.prf b/tools/qmake/mkspecs/features/default_pre.prf
index 6506e67ad..cb0625c2e 100644
--- a/tools/qmake/mkspecs/features/default_pre.prf
+++ b/tools/qmake/mkspecs/features/default_pre.prf
@@ -19,6 +19,9 @@ load(functions)
equals(_PRO_FILE_, "$$QTWEBENGINE_ROOT/qtwebengine.pro"): CONFIG += root_project_file
root_project_file:isPlatformSupported() {
+ !exists($$QTWEBENGINE_ROOT/src/3rdparty/chromium) {
+ error("Submodule qtwebengine-chromium does not exist. Run 'git submodule update --init'.")
+ }
load(configure)
runConfigure()
}
diff --git a/tools/qmake/mkspecs/features/functions.prf b/tools/qmake/mkspecs/features/functions.prf
index 2df689bca..26db26f44 100644
--- a/tools/qmake/mkspecs/features/functions.prf
+++ b/tools/qmake/mkspecs/features/functions.prf
@@ -19,6 +19,9 @@ defineTest(isPlatformSupported) {
skipBuild("Qt WebEngine on Windows requires MSVC 2013 or MSVC 2015.")
return(false)
}
+ isBuildingOnWin32() {
+ skipBuild("Qt WebEngine on Windows must be built on a 64-bit machine.")
+ }
} else:osx {
lessThan(QMAKE_XCODE_VERSION, 5.1) {
skipBuild("Using XCode version $$QMAKE_XCODE_VERSION, but at least version 5.1 is required to build Qt WebEngine.")
@@ -30,6 +33,10 @@ defineTest(isPlatformSupported) {
skipBuild("Qt WebEngine requires OS X version 10.9 or newer.")
return(false)
}
+ !isMinOSXSDKVersion(10, 10, 3): {
+ skipBuild("Qt WebEngine requires an OS X SDK version 10.10.3 or newer. Current version is $${WEBENGINE_OSX_SDK_PRODUCT_VERSION}.")
+ return(false)
+ }
} else {
skipBuild("Unknown platform. Qt WebEngine only supports Linux, Windows, and OS X.")
return(false)
@@ -77,6 +84,36 @@ defineTest(isQMLTestSupportApiEnabled) {
return(false)
}
+defineTest(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.
+ PROGRAM_FILES_X86 = $$(ProgramW6432)
+ isEmpty(PROGRAM_FILES_X86): return(true)
+ return(false)
+}
+
+defineTest(isMinOSXSDKVersion) {
+ requested_major = $$1
+ requested_minor = $$2
+ requested_patch = $$3
+ 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\'.")
+ return(false)
+ }
+ major_version = $$section(WEBENGINE_OSX_SDK_PRODUCT_VERSION, ., 0, 0)
+ minor_version = $$section(WEBENGINE_OSX_SDK_PRODUCT_VERSION, ., 1, 1)
+ patch_version = $$section(WEBENGINE_OSX_SDK_PRODUCT_VERSION, ., 2, 2)
+
+ greaterThan(major_version, $$requested_major):return(true)
+ equals(major_version, $$requested_major):greaterThan(minor_version, $$requested_minor):return(true)
+ equals(major_version, $$requested_major):equals(minor_version, $$requested_minor):!lessThan(patch_version, $$requested_patch):return(true)
+
+ return(false)
+}
+
# Map to the correct target type for gyp
defineReplace(toGypTargetType) {
equals(TEMPLATE, "app"):return("executable")
diff --git a/tools/scripts/take_snapshot.py b/tools/scripts/take_snapshot.py
index 04f53de88..f5a1ed9d9 100755
--- a/tools/scripts/take_snapshot.py
+++ b/tools/scripts/take_snapshot.py
@@ -84,7 +84,7 @@ def isInChromiumBlacklist(file_path):
not '/app/theme/' in file_path and
not '/app/resources/' in file_path and
not '/browser/printing/' in file_path and
- not '/browser/resources/' in file_path and
+ not ('/browser/resources/' in file_path and not '/chromeos/' in file_path) and
not '/renderer/resources/' in file_path and
not 'repack_locales' in file_path and
not 'third_party/chromevox' in file_path and
@@ -94,6 +94,7 @@ def isInChromiumBlacklist(file_path):
not 'common/localized_error.' in file_path and
not 'common/spellcheck_' in file_path and
not '/spellchecker/' in file_path and
+ not '/tools/convert_dict/' in file_path and
not file_path.endswith('cf_resources.rc') and
not file_path.endswith('version.py') and
not file_path.endswith('.grd') and
@@ -110,18 +111,22 @@ def isInChromiumBlacklist(file_path):
not file_path.startswith('components/error_page') and
not file_path.startswith('components/keyed_service') and
not file_path.startswith('components/mime_util') and
+ not file_path.startswith('components/precache') and
not file_path.startswith('components/pref_registry') and
not file_path.startswith('components/printing') and
not file_path.startswith('components/resources') and
not file_path.startswith('components/scheduler') and
not file_path.startswith('components/security_interstitials') and
+ not file_path.startswith('components/startup_metric_utils') and
not file_path.startswith('components/strings') and
not file_path.startswith('components/tracing') and
not file_path.startswith('components/url_formatter') and
not file_path.startswith('components/user_prefs') and
+ not file_path.startswith('components/version_') and
not file_path.startswith('components/visitedlink') and
not file_path.startswith('components/web_cache') and
not file_path.startswith('components/webcrypto') and
+ not file_path.startswith('components/webusb') and
not file_path.endswith('.grd') and
not file_path.endswith('.grdp') and
not 'components_strings' in file_path)
@@ -157,12 +162,12 @@ def isInChromiumBlacklist(file_path):
or file_path.startswith('third_party/bison')
or (file_path.startswith('third_party/cacheinvalidation') and
not file_path.endswith('isolate'))
+ or file_path.startswith('third_party/boringssl/src/fuzz')
or file_path.startswith('third_party/catapult')
or file_path.startswith('third_party/chromite')
or file_path.startswith('third_party/cld_2')
or file_path.startswith('third_party/codesighs')
or file_path.startswith('third_party/colorama')
- or file_path.startswith('third_party/cros_system_api')
or file_path.startswith('third_party/cygwin')
or file_path.startswith('third_party/cython')
or file_path.startswith('third_party/deqp')
@@ -174,13 +179,13 @@ def isInChromiumBlacklist(file_path):
or file_path.startswith('third_party/google_appengine_cloudstorage')
or file_path.startswith('third_party/google_toolbox_for_mac')
or file_path.startswith('third_party/hunspell_dictionaries')
+ or (file_path.startswith('third_party/icu') and file_path.endswith('icudtl_dat.S'))
or file_path.startswith('third_party/instrumented_libraries')
or file_path.startswith('third_party/jsr-305/src')
or file_path.startswith('third_party/junit')
or file_path.startswith('third_party/libphonenumber')
or file_path.startswith('third_party/libaddressinput')
or file_path.startswith('third_party/libc++')
- or file_path.startswith('third_party/libc++abi')
or file_path.startswith('third_party/liblouis')
or file_path.startswith('third_party/lighttpd')
or file_path.startswith('third_party/markdown')
@@ -188,6 +193,7 @@ def isInChromiumBlacklist(file_path):
or file_path.startswith('third_party/nacl_sdk_binaries')
or (file_path.startswith('third_party/polymer') and
not file_path.startswith('third_party/polymer/v1_0/components-chromium/'))
+ or file_path.startswith('third_party/openh264/src/res')
or file_path.startswith('third_party/pdfsqueeze')
or file_path.startswith('third_party/pefile')
or file_path.startswith('third_party/perl')
diff --git a/tools/scripts/version_resolver.py b/tools/scripts/version_resolver.py
index 66a09e15d..d07ca67da 100644
--- a/tools/scripts/version_resolver.py
+++ b/tools/scripts/version_resolver.py
@@ -38,8 +38,8 @@ import json
import urllib2
import git_submodule as GitSubmodule
-chromium_version = '47.0.2526.109'
-chromium_branch = '2526'
+chromium_version = '49.0.2623.91'
+chromium_branch = '2623'
ninja_version = 'v1.6.0'
json_url = 'http://omahaproxy.appspot.com/all.json'