summaryrefslogtreecommitdiffstats
path: root/Tools
diff options
context:
space:
mode:
authorKonstantin Tokarev <annulen@yandex.ru>2019-08-06 19:40:03 +0300
committerKonstantin Tokarev <annulen@yandex.ru>2019-08-13 20:24:44 +0300
commit688ec88511dedc1de04b4438c26ef071c55de4e8 (patch)
treec98e42ebc677f28518311513ec82d13fda994613 /Tools
parentb38ffac98772e2c544c212872a2664078a363cfd (diff)
Import QtWebKit commit 58390740ab21cbf3ad8d7b51972c9b24fdf58a9c
Change-Id: Ia730b2ca3e5c8c1556fed3301cdf2da7cfbd802f Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
Diffstat (limited to 'Tools')
-rw-r--r--Tools/Scripts/webkitperl/FeatureList.pm2
-rw-r--r--Tools/qmake/mkspecs/features/functions.prf2
-rw-r--r--Tools/qt/jhbuild-qt-5.4.modules1
-rw-r--r--Tools/qt/jhbuild.modules61
-rw-r--r--Tools/qt/patches/fontconfig-2.11.1-no-bitmaps.patch10
-rw-r--r--Tools/qt/patches/openwebrtc-no-gtk-doc.patch60
-rw-r--r--Tools/qt/patches/qtbase-5.4-fix-QTBUG-77231.patch50
-rwxr-xr-xTools/qt/update-wip-qtwebkit-refs47
8 files changed, 110 insertions, 123 deletions
diff --git a/Tools/Scripts/webkitperl/FeatureList.pm b/Tools/Scripts/webkitperl/FeatureList.pm
index 067779122..919c85875 100644
--- a/Tools/Scripts/webkitperl/FeatureList.pm
+++ b/Tools/Scripts/webkitperl/FeatureList.pm
@@ -233,7 +233,7 @@ my @features = (
define => "ENABLE_CSS_REGIONS", default => 1, value => \$cssRegionsSupport },
{ option => "css-compositing", desc => "Toggle CSS Compositing support",
- define => "ENABLE_CSS_COMPOSITING", default => isAppleWebKit(), value => \$cssCompositingSupport },
+ define => "ENABLE_CSS_COMPOSITING", default => (isAppleWebKit() || isQt()), value => \$cssCompositingSupport },
{ option => "custom-elements", desc => "Toggle custom elements support",
define => "ENABLE_CUSTOM_ELEMENTS", default => (isAppleMacWebKit() || isIOSWebKit()), value => \$customElementsSupport },
diff --git a/Tools/qmake/mkspecs/features/functions.prf b/Tools/qmake/mkspecs/features/functions.prf
index 213e482d1..e3f42cec4 100644
--- a/Tools/qmake/mkspecs/features/functions.prf
+++ b/Tools/qmake/mkspecs/features/functions.prf
@@ -82,7 +82,7 @@ defineTest(isPlatformSupported) {
}
}
} else {
- skipBuild("MinGW build skipped.")
+ isGCCVersionSupported()
}
} else: macos {
# We require macOS 10.10 (darwin version 14.0.0) or newer
diff --git a/Tools/qt/jhbuild-qt-5.4.modules b/Tools/qt/jhbuild-qt-5.4.modules
index 194335129..0bffc61a0 100644
--- a/Tools/qt/jhbuild-qt-5.4.modules
+++ b/Tools/qt/jhbuild-qt-5.4.modules
@@ -69,6 +69,7 @@
<patch file="qtbase-5.4-add-macros-for-enabling-disabling-warnings.patch" strip="1"/>
<patch file="qtbase-5.4-fix-Clang-warning-about-inconsistent-use-of-C-11-ove.patch" strip="1"/>
<patch file="qtbase-5.4-fix-gcc-Wsuggest-override-warning-on-Q_OBJECT.patch" strip="1"/>
+ <patch file="qtbase-5.4-fix-QTBUG-77231.patch" strip="1"/>
</branch>
<dependencies>
<dep package="fontconfig"/>
diff --git a/Tools/qt/jhbuild.modules b/Tools/qt/jhbuild.modules
index b3e0c5101..2c8ba1384 100644
--- a/Tools/qt/jhbuild.modules
+++ b/Tools/qt/jhbuild.modules
@@ -17,7 +17,6 @@
<dep package="gst-plugins-good"/>
<dep package="gst-plugins-bad"/>
<dep package="gst-libav"/>
- <dep package="openwebrtc"/>
<dep package="qt"/>
<if condition-set="linux">
<dep package="llvm"/>
@@ -75,7 +74,8 @@
</branch>
</autotools>
- <autotools id="harfbuzz" autogen-sh="configure">
+ <autotools id="harfbuzz" autogen-sh="configure"
+ autogenargs="--with-cairo=no">
<dependencies>
<dep package="icu"/>
</dependencies>
@@ -107,22 +107,21 @@
</branch>
</autotools>
- <autotools id="fontconfig"
- autogen-sh="configure"
- autogenargs="--enable-libxml2">
+ <autotools id="fontconfig"
+ autogenargs="--enable-libxml2 --disable-docs"
+ supports-non-srcdir-builds="no">
+ <if condition-set="macos">
+ <autogenargs value="--with-add-fonts=/System/Library/Fonts,/Library/Fonts,~/Library/Fonts"/>
+ </if>
<dependencies>
<dep package="freetype6"/>
<dep package="libxml2"/>
</dependencies>
- <branch module="software/fontconfig/release/fontconfig-2.11.1.tar.gz" version="2.11.1"
+ <branch module="software/fontconfig/release/fontconfig-2.12.4.tar.bz2" version="2.12.4"
repo="freedesktop.org"
- hash="sha256:b6b066c7dce3f436fdc0dfbae9d36122b38094f4f53bd8dffd45e195b0540d8d"
- md5sum="e75e303b4f7756c2b16203a57ac87eba">
- <patch file="fontconfig-2.11.1-no-bitmaps.patch" strip="0"/>
- </branch>
+ hash="sha256:668293fcc4b3c59765cdee5cee05941091c0879edcc24dfec5455ef83912e45c"/>
</autotools>
-
<autotools id="libxml2" supports-non-srcdir-builds="no"
autogen-sh="./autogen.sh; ./configure --without-python --without-valid --without-xinclude --without-xptr --without-c14n --without-catalog --without-regexps --without-zlib --without-lzma --without-schemas --without-schematron --without-threads --without-legacy --without-http --without-iconv --with-icu">
<dependencies>
@@ -221,46 +220,6 @@
md5sum="361638fa45466c5050bcde6bfe10fa46"/>
</autotools>
- <autotools id="libusrsctp" supports-non-srcdir-builds="no" autogen-sh="./bootstrap; ./configure --disable-warnings-as-errors">
- <branch repo="github.com" module="sctplab/usrsctp.git" checkoutdir="usrsctp" tag="078ff3252f73327e0ac11d6fd5eff62011f6646e"/>
- </autotools>
-
- <autotools id="gst-plugins-openwebrtc" supports-parallel-builds="no" supports-non-srcdir-builds="no" autogen-sh="./autogen.sh; ./configure">
- <if condition-set="macos">
- <makeargs value="CFLAGS+=-Wno-error"/>
- </if>
- <dependencies>
- <dep package="gst-plugins-base"/>
- <dep package="libusrsctp"/>
- </dependencies>
- <branch repo="github.com" module="EricssonResearch/openwebrtc-gst-plugins.git" checkoutdir="gst-plugins-openwebrtc" tag="e359b67484af90f416ea35e301205d2b53c77a14"/>
- </autotools>
-
- <autotools id="libnice" supports-non-srcdir-builds="no">
- <dependencies>
- <dep package="gstreamer"/>
- </dependencies>
- <branch repo="nice.freedesktop.org" module="releases/libnice-0.1.10.tar.gz" checkoutdir="libnice" version="0.1.10"
- hash="sha256:1dbfb663b730889ae8cab13a2913fe557d581f70b513c918bbbd0b7d3eefebc9"
- md5sum="27b62d0093ce29a39df1c6fcf0bb4396" size="903083">
- </branch>
- </autotools>
-
- <autotools id="openwebrtc" autogenargs="--enable-bridge=no --enable-owr-gst=yes --disable-tests">
- <if condition-set="macos">
- <makeargs value="CFLAGS+=-Wno-error"/>
- </if>
- <dependencies>
- <dep package="gst-plugins-openwebrtc"/>
- <dep package="libnice"/>
- </dependencies>
- <branch repo="github.com-tarball" module="EricssonResearch/openwebrtc/archive/13516c7f79a0c48bb411464f7613d4b426c70f5b.tar.gz" checkoutdir="openwebrtc" version="13516c7f79a0c48bb411464f7613d4b426c70f5b"
- hash="sha256:c849d36d97c17a198a5d9c180f13f14c7897c9236e2384ea11029e23b09b59ac"
- md5sum="13516c7f79a0c48bb411464f7613d4b426c70f5b.tar.gz" size="258936">
- <patch file="openwebrtc-no-gtk-doc.patch" strip="1"/>
- </branch>
- </autotools>
-
<autotools id="icu"
autogen-sh="./source/configure"
autogenargs="--disable-samples --enable-weak-threads">
diff --git a/Tools/qt/patches/fontconfig-2.11.1-no-bitmaps.patch b/Tools/qt/patches/fontconfig-2.11.1-no-bitmaps.patch
deleted file mode 100644
index 03babba2d..000000000
--- a/Tools/qt/patches/fontconfig-2.11.1-no-bitmaps.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- conf.d/Makefile.in.old 2016-06-23 19:00:01.309774583 +0300
-+++ conf.d/Makefile.in 2016-06-23 19:00:23.542159140 +0300
-@@ -341,6 +341,7 @@
- 65-fonts-persian.conf \
- 65-nonlatin.conf \
- 69-unifont.conf \
-+ 70-no-bitmaps.conf \
- 80-delicious.conf \
- 90-synthetic.conf
-
diff --git a/Tools/qt/patches/openwebrtc-no-gtk-doc.patch b/Tools/qt/patches/openwebrtc-no-gtk-doc.patch
deleted file mode 100644
index fb665e7d2..000000000
--- a/Tools/qt/patches/openwebrtc-no-gtk-doc.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-diff --git a/autogen.sh b/autogen.sh
-index 2c45ea9..878cf05 100755
---- a/autogen.sh
-+++ b/autogen.sh
-@@ -6,27 +6,42 @@
- srcdir=`dirname $0`
- (test -d $srcdir/m4) || mkdir $srcdir/m4
-
--pushd $srcdir > /dev/null
--gtkdocize && \
--autoreconf --verbose --force --install --make || {
-- echo 'autogen.sh failed';
-- exit 1;
--}
--
--popd > /dev/null
--
--while test "x$@" != "x" ; do
--optarg=`expr "x$@" : 'x[^=]*=\(.*\)'`
--case "$@" in
-+for ag_option in $@
-+do
-+case $ag_option in
- --noconfigure)
- NOCONFIGURE=defined
- AUTOGEN_EXT_OPT="$AUTOGEN_EXT_OPT --noconfigure"
- echo "+ configure run disabled"
-- shift
-+ ;;
-+ --disable-gtk-doc)
-+ enable_gtk_doc=no
-+ echo "+ gtk-doc disabled"
- ;;
- esac
- done
-
-+pushd $srcdir > /dev/null
-+
-+if test x$enable_gtk_doc = xno; then
-+ if test -f gtk-doc.make; then :; else
-+ echo "EXTRA_DIST = missing-gtk-doc" > gtk-doc.make
-+ fi
-+ echo "WARNING: You have disabled gtk-doc."
-+ echo " As a result, you will not be able to generate the API"
-+ echo " documentation and 'make dist' will not work."
-+ echo
-+else
-+ gtkdocize || exit $?
-+fi
-+
-+autoreconf --verbose --force --install --make || {
-+ echo 'autogen.sh failed';
-+ exit 1;
-+}
-+
-+popd > /dev/null
-+
- for arg do CONFIGURE_EXT_OPT="$CONFIGURE_EXT_OPT $arg"; done
- if test ! -z "$CONFIGURE_EXT_OPT"
- then
diff --git a/Tools/qt/patches/qtbase-5.4-fix-QTBUG-77231.patch b/Tools/qt/patches/qtbase-5.4-fix-QTBUG-77231.patch
new file mode 100644
index 000000000..6858e585c
--- /dev/null
+++ b/Tools/qt/patches/qtbase-5.4-fix-QTBUG-77231.patch
@@ -0,0 +1,50 @@
+--- a/src/gui/painting/qdrawhelper.cpp 2014-12-05 19:24:36.000000000 +0300
++++ b/src/gui/painting/qdrawhelper.cpp 2019-08-03 15:31:42.034910641 +0300
+@@ -3506,8 +3506,10 @@
+ }
+
+ /*
+- if Sca.Da + Dca.Sa >= Sa.Da
++ if Sca.Da + Dca.Sa > Sa.Da
+ Dca' = Sa.Da + Sca.(1 - Da) + Dca.(1 - Sa)
++ else if Sca == Sa
++ Dca' = Dca.Sa + Sca.(1 - Da) + Dca.(1 - Sa)
+ otherwise
+ Dca' = Dca.Sa/(1-Sca/Sa) + Sca.(1 - Da) + Dca.(1 - Sa)
+ */
+@@ -3518,8 +3520,10 @@
+ const int src_da = src * da;
+
+ const int temp = src * (255 - da) + dst * (255 - sa);
+- if (src_da + dst_sa >= sa_da)
++ if (src_da + dst_sa > sa_da)
+ return qt_div_255(sa_da + temp);
++ else if (src == sa || sa == 0)
++ return qt_div_255(temp);
+ else
+ return qt_div_255(255 * dst_sa / (255 - 255 * src / sa) + temp);
+ }
+@@ -3589,8 +3593,10 @@
+ }
+
+ /*
+- if Sca.Da + Dca.Sa <= Sa.Da
++ if Sca.Da + Dca.Sa < Sa.Da
+ Dca' = Sca.(1 - Da) + Dca.(1 - Sa)
++ else if Sca == 0
++ Dca' = Dca.Sa + Sca.(1 - Da) + Dca.(1 - Sa)
+ otherwise
+ Dca' = Sa.(Sca.Da + Dca.Sa - Sa.Da)/Sca + Sca.(1 - Da) + Dca.(1 - Sa)
+ */
+@@ -3602,8 +3608,10 @@
+
+ const int temp = src * (255 - da) + dst * (255 - sa);
+
+- if (src == 0 || src_da + dst_sa <= sa_da)
++ if (src_da + dst_sa < sa_da)
+ return qt_div_255(temp);
++ else if (src == 0)
++ return qt_div_255(dst_sa + temp);
+ return qt_div_255(sa * (src_da + dst_sa - sa_da) / src + temp);
+ }
+
diff --git a/Tools/qt/update-wip-qtwebkit-refs b/Tools/qt/update-wip-qtwebkit-refs
new file mode 100755
index 000000000..b37f31ddd
--- /dev/null
+++ b/Tools/qt/update-wip-qtwebkit-refs
@@ -0,0 +1,47 @@
+#!/usr/bin/env perl
+# Copyright (C) 2019 Konstantin Tokarev <annulen@yandex.ru>
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+# THE POSSIBILITY OF SUCH DAMAGE.
+
+use strict;
+use warnings;
+
+sub usage { print "Usage: $0 <remote> <commit>\n"; exit(1); }
+
+my ($remote, $commit) = @ARGV;
+defined $remote or usage();
+defined $commit or usage();
+
+print "Remote '$remote': ", `git remote get-url $remote`, "\n";
+$? == 0 or die "git exited with code $?";
+
+print `git --no-pager log --color -n1 --decorate=full $commit`;
+$? == 0 or die "git exited with code $?";
+
+print "\nDo you really want to switch wip/qtwebkit/5.212 to this commit? [y/N]";
+my $answer = <STDIN>;
+chomp $answer;
+lc $answer eq "y" or die "Got '$answer', exiting";
+
+print "git push -f $remote $commit:refs/heads/wip/qtwebkit/5.212 && git push -f $remote $commit:refs/staging/wip/qtwebkit/5.212\n";
+`git push -f $remote $commit:refs/heads/wip/qtwebkit/5.212 && git push -f $remote $commit:refs/staging/wip/qtwebkit/5.212`;
+$? == 0 or die "git exited with code $?";