Hello community,

here is the log from the commit of package libqt5-qtwebkit for openSUSE:Factory 
checked in at 2018-02-19 12:59:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libqt5-qtwebkit (Old)
 and      /work/SRC/openSUSE:Factory/.libqt5-qtwebkit.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libqt5-qtwebkit"

Mon Feb 19 12:59:29 2018 rev:45 rq:576797 version:5.212~alpha2

Changes:
--------
--- /work/SRC/openSUSE:Factory/libqt5-qtwebkit/libqt5-qtwebkit.changes  
2017-12-23 12:15:14.967978658 +0100
+++ /work/SRC/openSUSE:Factory/.libqt5-qtwebkit.new/libqt5-qtwebkit.changes     
2018-02-19 12:59:32.665157326 +0100
@@ -1,0 +2,47 @@
+Wed Dec 20 10:12:41 UTC 2017 - m...@suse.com
+
+- Add patch to fix build failure with CMake 3.10
+  * fix-build-with-cmake-3.10.diff
+- Use Gstreamer for audio/video support optional
+
+-------------------------------------------------------------------
+Tue Dec 12 12:58:44 UTC 2017 - fv...@suse.com
+
+- Add patch to keep the same private symbol version scheme:
+  * tell-the-truth-about-private-api.patch
+- Add patch to fix detection of OpenGL ES 2.0 with Qt >= 5.8:
+  * fix-gles-detection.patch
+- Add patch to enable symbol versioning for libQt5WebKit.so.5 as well:
+  * qt5webkit-symver.patch
+
+-------------------------------------------------------------------
+Tue Dec 12 11:49:08 UTC 2017 - m...@suse.com
+
+- Ported to Konstantin Tokarev's <annu...@yandex.ru> QtWebKit fork
+  version 5.212.0 Alpha 2 (FATE#323918, bsc#1050469)
+  * Based on WebKitGTK 2.12 (uses CMake instead of QMake)
+  * Newer WebKit base
+  * Improved support for web standards
+  * Many bugfixes and patched security holes inherited from upstream WebKit
+  * For more details please see:
+    https://github.com/annulen/webkit/releases/tag/qtwebkit-5.212.0-alpha
+    and
+    https://github.com/annulen/webkit/releases/tag/qtwebkit-5.212.0-alpha2
+- Drop unneeded patches
+  * 03_hide_std_symbols.diff
+  * 04_enable_debug_information.diff
+  * 05-fix-linker-errors.diff
+  * 7dac8c2d5f743563df76c2347c6ad394b6779ffc.patch
+  * fix-build-icu59.patch
+  * no-Werror-rpath.diff
+  * reduce-link-optimization.diff
+  * workaround-gcc7-crash.patch
+- Set minimum amount of RAM in _constraints to 10 GiB for x86_64
+- Add patch to always enable X11 target build:
+  * enable_x11_target_always.patch
+- Add patch to work around gcc7-related crash:
+  * webkit-fix-WTF-StringImpl-copyChars-segfaults-with-gcc7.patch
+- Corrected License tag. QtWebKit is just LGPL-2.1+ and does not follow Qt's
+  commercial-inspired licensing scheme of (L)GPLv3-only.
+
+-------------------------------------------------------------------

Old:
----
  03_hide_std_symbols.diff
  04_enable_debug_information.diff
  05-fix-linker-errors.diff
  7dac8c2d5f743563df76c2347c6ad394b6779ffc.patch
  fix-build-icu59.patch
  no-Werror-rpath.diff
  qtwebkit-opensource-src-5.9.0.tar.xz
  reduce-link-optimization.diff
  workaround-gcc7-crash.patch

New:
----
  enable_x11_target_always.patch
  fix-build-with-cmake-3.10.diff
  fix-gles-detection.patch
  qt5webkit-symver.patch
  qtwebkit-5.212.0-alpha2.tar.xz
  tell-the-truth-about-private-api.patch
  webkit-fix-WTF-StringImpl-copyChars-segfaults-with-gcc7.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libqt5-qtwebkit.spec ++++++
--- /var/tmp/diff_new_pack.HJN93A/_old  2018-02-19 12:59:39.784900555 +0100
+++ /var/tmp/diff_new_pack.HJN93A/_new  2018-02-19 12:59:39.788900412 +0100
@@ -15,75 +15,82 @@
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
 
+%bcond_without avsupport
 
 %define qt5_snapshot 0
 
 %define libname libQt5WebKitWidgets5
 
+%define base_name qtwebkit
+%define real_version 5.212
+%define so_version 5.212
+%define full_version 5.212.0
+%define required_qt5 5.2
+%define prerel_version alpha2
+%define tar_version %{base_name}-%{full_version}-%{prerel_version}
+%define make_jobs /usr/bin/make -j4 VERBOSE=1
 Name:           libqt5-qtwebkit
-Version:        5.9.0
+Version:        5.212~%{prerel_version}
 Release:        0
-%define base_name libqt5
-%define real_version 5.9.0
-%define so_version 5.9.0
-%define tar_version qtwebkit-opensource-src-%{real_version}
-# Workaround ppc64le build failures due to OOM issue, bnc#863533
-%ifarch ppc64le
-%define make_jobs /usr/bin/make -j4 VERBOSE=1
-%endif
 Summary:        Qt 5 WebKit Library
-License:        LGPL-2.1-with-Qt-Company-Qt-exception-1.1 or 
LGPL-3.0-with-Qt-Company-Qt-exception-1.1
+License:        LGPL-2.1+
 Group:          Development/Libraries/X11
 Url:            https://www.qt.io
-Source:         
https://download.qt.io/community_releases/5.9/%{real_version}-final/%{tar_version}.tar.xz
+Source:         
https://github.com/annulen/webkit/releases/download/%{tar_version}/%{tar_version}.tar.xz
 Source1:        baselibs.conf
 Source99:       libqt5-qtwebkit-rpmlintrc
-Patch1:         04_enable_debug_information.diff
-# PATCH-FIX-OPENSUSE 03_hide_std_symbols.diff asterios.dra...@gmail.com -- Do 
not make the std:: symbols in webkit public (taken from Ubuntu)
-Patch2:         03_hide_std_symbols.diff
-Patch3:         reduce-link-optimization.diff
-Patch4:         7dac8c2d5f743563df76c2347c6ad394b6779ffc.patch
-# PATCH-FIX-OPENSUSE 05-fix-linker-errors.diff cgiboude...@gmx.com -- Fix 
linking errors
-Patch5:         05-fix-linker-errors.diff
-# PATCH-FIX-UPSTREAM fix-build-icu59.patch
-Patch6:         fix-build-icu59.patch
-# PATCH-FIX-UPSTREAM workaround-gcc7-crash.patch
-Patch7:         workaround-gcc7-crash.patch
-# PATCH-MISSING-TAG -- See 
http://wiki.opensuse.org/openSUSE:Packaging_Patches_guidelines
-Patch130:       no-Werror-rpath.diff
-
-BuildRequires:  libQt5Core-private-headers-devel >= %{version}
-BuildRequires:  libQt5Gui-private-headers-devel >= %{version}
-BuildRequires:  libQt5Widgets-private-headers-devel >= %{version}
-BuildRequires:  libqt5-qtdeclarative-private-headers-devel >= %{version}
-BuildRequires:  libqt5-qtlocation-private-headers-devel >= %{version}
-BuildRequires:  pkgconfig(Qt5Core) >= %{version}
-BuildRequires:  pkgconfig(Qt5Location) >= %{version}
-BuildRequires:  pkgconfig(Qt5Network) >= %{version}
-BuildRequires:  pkgconfig(Qt5OpenGL) >= %{version}
-BuildRequires:  pkgconfig(Qt5PrintSupport) >= %{version}
-BuildRequires:  pkgconfig(Qt5Quick) >= %{version}
-BuildRequires:  pkgconfig(Qt5Sensors) >= %{version}
-BuildRequires:  pkgconfig(Qt5Sql) >= %{version}
-BuildRequires:  pkgconfig(Qt5Test) >= %{version}
-BuildRequires:  pkgconfig(Qt5WebChannel) >= %{version}
-BuildRequires:  pkgconfig(Qt5Widgets) >= %{version}
-%if 0%{?suse_version} < 1315
-BuildRequires:  pkgconfig(gstreamer-0.10)
-BuildRequires:  pkgconfig(gstreamer-app-0.10)
-BuildRequires:  pkgconfig(gstreamer-base-0.10)
-BuildRequires:  pkgconfig(gstreamer-interfaces-0.10)
-BuildRequires:  pkgconfig(gstreamer-pbutils-0.10)
-BuildRequires:  pkgconfig(gstreamer-plugins-base-0.10)
-BuildRequires:  pkgconfig(gstreamer-video-0.10)
+# PATCH-FIX-OPENSUSE Enable X11 target build always as we didn't ship Xcb 
Plugin cmake file - m...@suse.com
+Patch0:         enable_x11_target_always.patch
+# PATCH-FIX-OPENSUSE
+Patch1:         tell-the-truth-about-private-api.patch
+# PATCH-FIX-UPSTREAM Fix segfaults when built with gcc7 - m...@suse.com
+Patch2:         webkit-fix-WTF-StringImpl-copyChars-segfaults-with-gcc7.patch
+# PATCH-FIX-UPSTREAM Fix build when Qt uses OpenGL ES 2
+Patch3:         fix-gles-detection.patch
+# PATCH-FIX-OPENSUSE
+Patch4:         qt5webkit-symver.patch
+# PATCH-FIX-UPSTREAM 
https://github.com/annulen/webkit/commit/f51554bf104ab0491370f66631fe46143a23d5c2
+Patch5:         fix-build-with-cmake-3.10.diff
+
+# openSUSE Leap 42.x defaults to GCC 4
+%if 0%{?suse_version} == 1315
+%define _cxx g++-6
+%define _cc gcc-6
+BuildRequires:    gcc6
+BuildRequires:    gcc6-c++
+#!BuildIgnore:  libgcc_s1
 %else
+%define _cxx g++
+%define _cc gcc
+BuildRequires:    gcc
+BuildRequires:    gcc-c++
+%endif
+%if %{with avsupport}
 BuildRequires:  pkgconfig(gstreamer-1.0)
 BuildRequires:  pkgconfig(gstreamer-app-1.0)
 BuildRequires:  pkgconfig(gstreamer-base-1.0)
 BuildRequires:  pkgconfig(gstreamer-pbutils-1.0)
 BuildRequires:  pkgconfig(gstreamer-plugins-base-1.0)
 BuildRequires:  pkgconfig(gstreamer-video-1.0)
+%define _avSupport ON
+%else
+%define _avSupport OFF
 %endif
+BuildRequires:  libQt5Core-private-headers-devel >= %{required_qt5}
+BuildRequires:  libQt5Gui-private-headers-devel >= %{required_qt5}
+BuildRequires:  libQt5Widgets-private-headers-devel >= %{required_qt5}
+BuildRequires:  libqt5-qtdeclarative-private-headers-devel >= %{required_qt5}
+BuildRequires:  libqt5-qtlocation-private-headers-devel >= %{required_qt5}
+BuildRequires:  pkgconfig(Qt5Core) >= %{required_qt5}
+BuildRequires:  pkgconfig(Qt5Location) >= %{required_qt5}
+BuildRequires:  pkgconfig(Qt5Network) >= %{required_qt5}
+BuildRequires:  pkgconfig(Qt5OpenGL) >= %{required_qt5}
+BuildRequires:  pkgconfig(Qt5PrintSupport) >= %{required_qt5}
+BuildRequires:  pkgconfig(Qt5Quick) >= %{required_qt5}
+BuildRequires:  pkgconfig(Qt5Sensors) >= %{required_qt5}
+BuildRequires:  pkgconfig(Qt5Test) >= %{required_qt5}
+BuildRequires:  pkgconfig(Qt5WebChannel) >= %{required_qt5}
+BuildRequires:  pkgconfig(Qt5Widgets) >= %{required_qt5}
 BuildRequires:  bison
 BuildRequires:  flex
 BuildRequires:  gperf
@@ -92,6 +99,7 @@
 BuildRequires:  libxslt-devel
 BuildRequires:  python-xml
 BuildRequires:  ruby
+BuildRequires:  hyphen-devel
 BuildRequires:  pkgconfig(fontconfig)
 BuildRequires:  pkgconfig(gl)
 BuildRequires:  pkgconfig(glib-2.0)
@@ -120,23 +128,18 @@
 the full screen as specified within the QML application.
 
 %prep
-%setup -q -n qtwebkit-opensource-src-%{real_version}
+%setup -q -n %{tar_version}
+%patch0 -p1
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
-%patch4 -Rp1
+%patch4 -p1
 %patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch130 -p1
 
 %package -n %libname
 Summary:        Qt 5 WebKit Widget library
 Group:          Development/Libraries/X11
 Requires:       libQt5WebKit5 = %version
-%requires_ge libQt5OpenGL5
-%requires_ge libQt5PrintSupport5
-%requires_ge libQt5Widgets5
 
 %description -n %libname
 The Qt WebKit module provides the WebView API, which allows QML
@@ -147,12 +150,6 @@
 %package -n libQt5WebKit5
 Summary:        Qt5 WebKit Library
 Group:          Development/Libraries/X11
-%requires_ge libQt5Gui5
-%requires_ge libQt5Network5
-%requires_ge libQt5Positioning5
-%requires_ge libQt5Sensors5
-%requires_ge libQt5Sql5
-%requires_ge libQt5WebChannel5
 
 %description -n libQt5WebKit5
 You need this package if you want to compile programs with qtwebkit.
@@ -164,39 +161,37 @@
 # imports splited with 5.4.1
 Conflicts:      libQt5WebKit5 < 5.4.1
 Requires:       libQt5WebKit5 = %version
-%requires_ge libQtQuick5
 
 %description -n libQt5WebKit5-imports
 You need this package if you want to compile programs with qtwebkit.
 
 %package -n libQt5WebKitWidgets-devel
-Summary:        Development files for the Qt5 Webkit Widgets library
+Summary:        Development files for the Qt5 WebKit Widgets library
 Group:          Development/Libraries/X11
 Requires:       %libname = %{version}
 Requires:       libQt5WebKit5-devel = %{version}
-Requires:       libqt5-qtdeclarative-devel >= %{version}
-Requires:       libqt5-qtsensors-devel >= %{version}
+Requires:       libqt5-qtdeclarative-devel
+Requires:       libqt5-qtsensors-devel
 
 %description -n libQt5WebKitWidgets-devel
 You need this package if you want to compile programs with qtwebkit.
 
 %package -n libQt5WebKit5-devel
-Summary:        Development files for the Qt5 Webkit library
+Summary:        Development files for the Qt5 WebKit library
 Group:          Development/Libraries/X11
 Requires:       libQt5WebKit5 = %version
-Requires:       pkgconfig(Qt5Core) >= %version
-Requires:       pkgconfig(Qt5Gui) >= %version
-Requires:       pkgconfig(Qt5Network) >= %version
-Requires:       pkgconfig(Qt5Qml) >= %version
-Requires:       pkgconfig(Qt5Quick) >= %version
-Requires:       pkgconfig(Qt5Sensors) >= %version
-Requires:       pkgconfig(Qt5Sql) >= %version
+Requires:       pkgconfig(Qt5Core)
+Requires:       pkgconfig(Qt5Gui)
+Requires:       pkgconfig(Qt5Network)
+Requires:       pkgconfig(Qt5Qml)
+Requires:       pkgconfig(Qt5Quick)
+Requires:       pkgconfig(Qt5Sensors)
 
 %description -n libQt5WebKit5-devel
 You need this package if you want to compile programs with qtwebkit.
 
 %package -n libQt5WebKitWidgets-private-headers-devel
-Summary:        Non-ABI stable experimental API for the Qt5 Webkit Widgets 
library
+Summary:        Non-ABI stable experimental API for the Qt5 WebKit Widgets 
library
 Group:          Development/Libraries/C and C++
 BuildArch:      noarch
 Requires:       libQt5WebKit-private-headers-devel = %{version}
@@ -209,7 +204,7 @@
 the exact Qt version.
 
 %package -n libQt5WebKit-private-headers-devel
-Summary:        Non-ABI stable experimental API for the Qt5 Webkit library
+Summary:        Non-ABI stable experimental API for the Qt5 WebKit library
 Group:          Development/Libraries/C and C++
 BuildArch:      noarch
 Requires:       libQt5WebKit5-devel = %{version}
@@ -221,7 +216,7 @@
 the exact Qt version.
 
 %package devel
-Summary:        Development files for the Qt5 Webkit library
+Summary:        Development files for the Qt5 WebKit library
 Group:          Development/Libraries/X11
 Requires:       libQt5WebKit5-devel = %{version}
 Requires:       libQt5WebKitWidgets-devel = %{version}
@@ -253,27 +248,37 @@
 %postun -n libQt5WebKit5 -p /sbin/ldconfig
 
 %build
-#if %qt5_snapshot
+%if %qt5_snapshot
 #force the configure script to generate the forwarding headers (it checks 
whether .git directory exists)
 mkdir .git
-#endif
-export QMAKEPATH=`pwd`
-RPM_OPT_FLAGS="$RPM_OPT_FLAGS "
-export RPM_OPT_FLAGS=${RPM_OPT_FLAGS/-g / /}
-export LDFLAGS="$LDFLAGS -Wl,--reduce-memory-overheads -Wl,--no-keep-memory 
-Wl,--as-needed"
-export PATH=%{_libqt5_bindir}:$PATH
-%ifarch aarch64 ppc ppc64 ppc64le s390 s390x
-%_libqt5_qmake DEFINES+=ENABLE_JIT=0 DEFINES+=ENABLE_YARR_JIT=0 
DEFINES+=ENABLE_ASSEMBLER=0
-%else
-%_libqt5_qmake
 %endif
+%global optflags %(echo %{optflags} -Wl,--no-keep-memory 
-Wl,--reduce-memory-overheads | sed 's/-g /-g1 /')
+%cmake -DPORT=Qt \
+       -DCMAKE_C_COMPILER=%{_cc} \
+       -DCMAKE_CXX_COMPILER=%{_cxx} \
+       -DCMAKE_BUILD_TYPE=Release \
+       -DENABLE_VIDEO=%{_avSupport} \
+       -DENABLE_WEB_AUDIO=%{_avSupport} \
+%ifarch ppc ppc64 ppc64le s390 s390x
+       -DENABLE_JIT=OFF \
+       -DUSE_SYSTEM_MALLOC=ON \
+%endif
+       -DCMAKE_EXE_LINKER_FLAGS="-Wl,--as-needed -Wl,-z,now -pthread" \
+       -DCMAKE_MODULE_LINKER_FLAGS="-Wl,--as-needed -Wl,-z,now -pthread" \
+       -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed -Wl,-z,now -pthread"
+
 %make_jobs
 
 %install
-%qmake5_install
+%cmake_install
 find %{buildroot}/%{_libqt5_libdir} -type f -name '*la' -print -exec perl -pi 
-e 's,-L%{_builddir}/\S+,,g' {} +
-find %{buildroot}/%{_libqt5_libdir} -type f -name '*pc' -print -exec perl -pi 
-e "s, -L$RPM_BUILD_DIR/?\S+,,g" {} + -exec sed -i -e 
"s,^moc_location=.*,moc_location=%{_lib}qt5_bindir/moc," -e 
"s,uic_location=.*,uic_location=%{_lib}qt5_bindir/uic," {} +
-find %{buildroot}/%{_libqt5_libdir} -type f -name '*prl' -exec sed -i -e 
"/^QMAKE_PRL_BUILD_DIR/d" {} +
+
+# fix pkgconfig file
+sed -i '/Name/a Description: Qt5 WebKit module' 
%{buildroot}%{_libqt5_libdir}/pkgconfig/Qt5WebKit.pc
+sed -i "s,Cflags: -I%{_libqt5_includedir}/Qt5WebKit,Cflags: 
-I%{_libqt5_includedir}/QtWebKit,g" 
%{buildroot}%{_libqt5_libdir}/pkgconfig/Qt5WebKit.pc
+
+sed -i '/Name/a Description: Qt5 WebKitWidgets module' 
%{buildroot}%{_libqt5_libdir}/pkgconfig/Qt5WebKitWidgets.pc
+sed -i "s,Cflags: -I%{_libqt5_includedir}/Qt5WebKitWidgets,Cflags: 
-I%{_libqt5_includedir}/QtWebKitWidgets,g" 
%{buildroot}%{_libqt5_libdir}/pkgconfig/Qt5WebKitWidgets.pc
 
 # kill .la files
 rm -f %{buildroot}%{_libqt5_libdir}/lib*.la
@@ -289,7 +294,9 @@
 %defattr(-,root,root,755)
 %doc LICENSE.*
 %{_libqt5_libdir}/libQt5WebKit.so.*
+%{_libqt5_libexecdir}/QtWebDatabaseProcess
 %{_libqt5_libexecdir}/QtWebPluginProcess
+%{_libqt5_libexecdir}/QtWebNetworkProcess
 
 %files -n libQt5WebKit5-imports
 %defattr(-,root,root,755)
@@ -299,35 +306,31 @@
 %files -n libQt5WebKitWidgets-private-headers-devel
 %defattr(-,root,root,755)
 %doc LICENSE.*
-%{_libqt5_includedir}/QtWebKitWidgets/%{so_version}
+%{_libqt5_includedir}/QtWebKitWidgets/%{full_version}
 
 %files -n libQt5WebKit-private-headers-devel
 %defattr(-,root,root,755)
 %doc LICENSE.*
-%{_libqt5_includedir}/QtWebKit/%{so_version}
+%{_libqt5_includedir}/QtWebKit/%{full_version}
 
 %files -n libQt5WebKit5-devel
 %defattr(-,root,root,755)
 %doc LICENSE.*
-%exclude %{_libqt5_includedir}/QtWebKit/%{so_version}
+%exclude %{_libqt5_includedir}/QtWebKit/%{full_version}
 %{_libqt5_includedir}/QtWebKit
 %{_libqt5_libdir}/cmake/Qt5WebKit
-%{_libqt5_libdir}/libQt5WebKit.prl
 %{_libqt5_libdir}/libQt5WebKit.so
 %{_libqt5_libdir}/pkgconfig/Qt5WebKit.pc
 %{_libqt5_archdatadir}/mkspecs/modules/qt_lib_webkit.pri
-%{_libqt5_archdatadir}/mkspecs/modules/qt_lib_webkit_private.pri
 
 %files -n libQt5WebKitWidgets-devel
 %defattr(-,root,root,755)
 %doc LICENSE.*
-%exclude %{_libqt5_includedir}/QtWebKitWidgets/%{so_version}
+%exclude %{_libqt5_includedir}/QtWebKitWidgets/%{full_version}
 %{_libqt5_includedir}/QtWebKitWidgets
 %{_libqt5_libdir}/cmake/Qt5WebKitWidgets
-%{_libqt5_libdir}/libQt5WebKitWidgets.prl
 %{_libqt5_libdir}/libQt5WebKitWidgets.so
 %{_libqt5_libdir}/pkgconfig/Qt5WebKitWidgets.pc
 %{_libqt5_archdatadir}/mkspecs/modules/qt_lib_webkitwidgets.pri
-%{_libqt5_archdatadir}/mkspecs/modules/qt_lib_webkitwidgets_private.pri
 
 %changelog

++++++ _constraints ++++++
--- /var/tmp/diff_new_pack.HJN93A/_old  2018-02-19 12:59:39.824899113 +0100
+++ /var/tmp/diff_new_pack.HJN93A/_new  2018-02-19 12:59:39.824899113 +0100
@@ -1,12 +1,22 @@
 <constraints>
  <hardware>
   <memory>
-   <size unit="G">8</size>
+   <size unit="G">6</size>
   </memory>
   <processors>4</processors>
  </hardware>
   <overwrite>
     <conditions>
+      <arch>x86_64</arch>
+    </conditions>
+    <hardware>
+     <memory>
+      <size unit="G">10</size>
+     </memory>
+    </hardware>
+  </overwrite>
+  <overwrite>
+    <conditions>
       <arch>s390x</arch>
     </conditions>
     <hardware>

++++++ enable_x11_target_always.patch ++++++
From: Max Lin <m...@suse.com>
Subject: Enable X11 target build always

openSUSE didn't ship Xcb Plugin's cmake file, it need to make sure
X11 target build is on always.

Index: qtwebkit-5.212.0-alpha2/Source/cmake/OptionsQt.cmake
===================================================================
--- qtwebkit-5.212.0-alpha2.orig/Source/cmake/OptionsQt.cmake
+++ qtwebkit-5.212.0-alpha2/Source/cmake/OptionsQt.cmake
@@ -154,7 +154,7 @@ endif ()
 # FIXME: Move Qt handling here
 find_package(Qt5Gui QUIET)
 
-if (UNIX AND TARGET Qt5::QXcbIntegrationPlugin AND NOT APPLE)
+if (UNIX AND NOT APPLE)
     set(ENABLE_X11_TARGET_DEFAULT ON)
 else ()
     set(ENABLE_X11_TARGET_DEFAULT OFF)
++++++ fix-build-with-cmake-3.10.diff ++++++
>From f51554bf104ab0491370f66631fe46143a23d5c2 Mon Sep 17 00:00:00 2001
From: Konstantin Tokarev <annu...@yandex.ru>
Date: Sat, 7 Oct 2017 17:38:32 +0300
Subject: [PATCH] [cmake] Fix build with CMake 3.10: -frtti was enabled for
 wrong file path

Change-Id: I65d4f491f21c17f6d99a14259988d2ddb0d67105
---
 Source/WebKit/PlatformQt.cmake | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Source/WebKit/PlatformQt.cmake b/Source/WebKit/PlatformQt.cmake
index 61433257a76..edfa57e97ac 100644
--- a/Source/WebKit/PlatformQt.cmake
+++ b/Source/WebKit/PlatformQt.cmake
@@ -795,6 +795,7 @@ if (COMPILER_IS_GCC_OR_CLANG)
     set_source_files_properties(
         qt/Api/qwebdatabase.cpp
         qt/Api/qwebelement.cpp
+        qt/Api/qwebfullscreenrequest.cpp
         qt/Api/qwebhistory.cpp
         qt/Api/qwebhistoryinterface.cpp
         qt/Api/qwebpluginfactory.cpp
@@ -804,7 +805,6 @@ if (COMPILER_IS_GCC_OR_CLANG)
 
         qt/WidgetApi/qgraphicswebview.cpp
         qt/WidgetApi/qwebframe.cpp
-        qt/WidgetApi/qwebfullscreenrequest.cpp
         qt/WidgetApi/qwebinspector.cpp
         qt/WidgetApi/qwebpage.cpp
         qt/WidgetApi/qwebview.cpp
-- 
2.13.6

++++++ fix-gles-detection.patch ++++++
>From 23d86b98f095a25b6bc78b9d3654077a7f1f5c04 Mon Sep 17 00:00:00 2001
From: Thiago Macieira <thiago.macie...@intel.com>
Date: Mon, 3 Jul 2017 12:46:34 -0700
Subject: [PATCH] Fix build when Qt uses OpenGL ES 2

The QT_OPENGL_ES_2 macro is a QtGui feature, so it's not provided by
qglobal.h, but instead qtguiglobal.h (a header new in 5.8.0).

Using the QtGui/ prefix here to make sure it includes even if
WTF/Platform.h is compiled without -I$QTDIR/include/QtGui.

Change-Id: I8d96dea9955d4c749b99fffd14cde9c566436381
Reviewed-by: Allan Sandfeld Jensen <allan.jen...@qt.io>
---
 Source/WTF/wtf/Platform.h | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
index f3d725217..0666ac710 100644
--- a/Source/WTF/wtf/Platform.h
+++ b/Source/WTF/wtf/Platform.h
@@ -1052,6 +1052,9 @@
 #if PLATFORM(QT)
 #ifdef __cplusplus
 #include <qglobal.h>
+#if QT_VERSION >= QT_VERSION_CHECK(5,8,0)
+#include <QtGui/qtguiglobal.h>
+#endif
 #endif
 #if defined(QT_OPENGL_ES_2) && !defined(USE_OPENGL_ES_2)
 #define USE_OPENGL_ES_2 1
-- 
2.15.1

++++++ qt5webkit-symver.patch ++++++
From: Fabian Vogt <fv...@suse.com>
Subject: Also use a linker version script for libQt5WebKit

To maintain ABI compatibility with the older libQt5WebKit5 packages.

https://github.com/annulen/webkit/issues/597

diff --git a/Source/WebKit/CMakeLists.txt b/Source/WebKit/CMakeLists.txt
index 82dc1e662a5..bfe480c7cf4 100644
--- a/Source/WebKit/CMakeLists.txt
+++ b/Source/WebKit/CMakeLists.txt
@@ -78,6 +78,13 @@ if (${PORT} STREQUAL "Qt")
     if (ENABLE_WEBKIT2)
         add_dependencies(WebKit WebKit2)
     endif ()
+
+    set(VERSION_SCRIPT "${CMAKE_BINARY_DIR}/QtWebKit.version")
+    add_custom_command(TARGET WebKit PRE_LINK
+        COMMAND ${PERL_EXECUTABLE} ${TOOLS_DIR}/qt/generate-version-script.pl 
${Qt5_VERSION} > ${VERSION_SCRIPT}
+        VERBATIM
+    )
+    set_target_properties(WebKit PROPERTIES LINK_FLAGS 
-Wl,--version-script,${VERSION_SCRIPT})
 endif ()
 
 add_dependencies(WebKit WebCore)
diff --git a/Source/WebKit2/CMakeLists.txt b/Source/WebKit2/CMakeLists.txt
index e5d08ed68ba..6736689a2d1 100644
--- a/Source/WebKit2/CMakeLists.txt
+++ b/Source/WebKit2/CMakeLists.txt
@@ -776,6 +776,13 @@ if (WebKit2_VERSION_SCRIPT)
     ADD_TARGET_PROPERTIES(WebKit2 LINK_FLAGS "${WebKit2_VERSION_SCRIPT}")
 endif ()
 
+set(VERSION_SCRIPT "${CMAKE_BINARY_DIR}/QtWebKit2.version")
+add_custom_command(TARGET WebKit2 PRE_LINK
+    COMMAND ${PERL_EXECUTABLE} ${TOOLS_DIR}/qt/generate-version-script.pl 
${Qt5_VERSION} > ${VERSION_SCRIPT}
+    VERBATIM
+)
+set_target_properties(WebKit2 PROPERTIES LINK_FLAGS 
-Wl,--version-script,${VERSION_SCRIPT})
+
 add_executable(WebProcess ${WebProcess_SOURCES})
 add_webkit2_prefix_header(WebProcess)
 target_link_libraries(WebProcess ${WebProcess_LIBRARIES})
++++++ tell-the-truth-about-private-api.patch ++++++
From: Fabian Vogt <fv...@suse.com>
Subject: Tell the same truth as QtCore about the private API

It may change with each new release, so also include the minor
and patch versions in the symbol version.

Index: qtwebkit-5.212.0-alpha2/Tools/qt/generate-version-script.pl
===================================================================
--- qtwebkit-5.212.0-alpha2.orig/Tools/qt/generate-version-script.pl
+++ qtwebkit-5.212.0-alpha2/Tools/qt/generate-version-script.pl
@@ -32,14 +32,15 @@ my $qtNamespace = shift @ARGV;
 
 die "Usage: $0 <Qt version> [Qt namespace]\n" unless $qtVer;
 
-$qtVer =~ /^(\d+)\.(\d+)\.\d+$/ or die "$qtVer is not valid Qt version\n";
+$qtVer =~ /^(\d+)\.(\d+)\.(\d+)$/ or die "$qtVer is not valid Qt version\n";
 my $major = $1;
 my $minor = $2;
+my $patch = $3;
 
 # Next code tries to mirror logic of mkspecs/features/qt_module.prf
 
 say
-"Qt_${major}_PRIVATE_API {
+"Qt_${major}.${minor}.${patch}_PRIVATE_API {
     qt_private_api_tag*;
 };";
 
++++++ webkit-fix-WTF-StringImpl-copyChars-segfaults-with-gcc7.patch ++++++
>From 7175db5f8c38b3f3f3146a085719285ea440e459 Mon Sep 17 00:00:00 2001
From: "utatane....@gmail.com"
 <utatane....@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Thu, 6 Jul 2017 02:31:35 +0000
Subject: [PATCH] WTF::StringImpl::copyChars segfaults when built with GCC 7
 https://bugs.webkit.org/show_bug.cgi?id=173407

Reviewed by Andreas Kling.

JSTests:

* stress/string-repeat-copy-chars-crash.js: Added.
(shouldBe):

Source/WTF:

With GCC 7, StringImpl::copyChars() behaves as unexpected.
This function violates strict aliasing rule.

This optimization is originally introduced to improve performance
in SunSpider's string tests in 2008. When running it in my Linux
box, it no longer causes any observable difference. So, we just
remove this optimization.

                                baseline                  patched

string-base64                7.7544+-0.1761            7.6138+-0.2071          
might be 1.0185x faster
string-fasta                10.5429+-0.2746     ?     10.7500+-0.2669        ? 
might be 1.0196x slower
string-tagcloud             14.8588+-0.2828           14.8039+-0.3039
string-unpack-code          36.1769+-0.4251           35.3397+-0.5398          
might be 1.0237x faster
string-validate-input        8.5182+-0.2206            8.3514+-0.2179          
might be 1.0200x faster

* wtf/text/StringImpl.h:
(WTF::StringImpl::copyChars):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@219182 
268f45cc-cd09-0410-ab3c-d52691b4dbfc
---
 JSTests/ChangeLog                                | 10 +++++++++
 JSTests/stress/string-repeat-copy-chars-crash.js |  8 ++++++++
 Source/WTF/ChangeLog                             | 26 ++++++++++++++++++++++++
 Source/WTF/wtf/text/StringImpl.h                 | 23 +--------------------
 4 files changed, 45 insertions(+), 22 deletions(-)
 create mode 100644 JSTests/stress/string-repeat-copy-chars-crash.js

Index: qtwebkit-5.212.0-alpha2/Source/WTF/wtf/text/StringImpl.h
===================================================================
--- qtwebkit-5.212.0-alpha2.orig/Source/WTF/wtf/text/StringImpl.h
+++ qtwebkit-5.212.0-alpha2/Source/WTF/wtf/text/StringImpl.h
@@ -619,25 +619,7 @@ public:
             *destination = *source;
             return;
         }
-
-        if (numCharacters <= s_copyCharsInlineCutOff) {
-            unsigned i = 0;
-#if (CPU(X86) || CPU(X86_64))
-            const unsigned charsPerInt = sizeof(uint32_t) / sizeof(T);
-
-            if (numCharacters > charsPerInt) {
-                unsigned stopCount = numCharacters & ~(charsPerInt - 1);
-
-                const uint32_t* srcCharacters = reinterpret_cast<const 
uint32_t*>(source);
-                uint32_t* destCharacters = 
reinterpret_cast<uint32_t*>(destination);
-                for (unsigned j = 0; i < stopCount; i += charsPerInt, ++j)
-                    destCharacters[j] = srcCharacters[j];
-            }
-#endif
-            for (; i < numCharacters; ++i)
-                destination[i] = source[i];
-        } else
-            memcpy(destination, source, numCharacters * sizeof(T));
+        memcpy(destination, source, numCharacters * sizeof(T));
     }
 
     ALWAYS_INLINE static void copyChars(UChar* destination, const LChar* 
source, unsigned numCharacters)
@@ -855,9 +837,6 @@ private:
         return *tailPointer<StringImpl*>();
     }
 
-    // This number must be at least 2 to avoid sharing empty, null as well as 
1 character strings from SmallStrings.
-    static const unsigned s_copyCharsInlineCutOff = 20;
-
     enum class CaseConvertType { Upper, Lower };
     template<CaseConvertType type, typename CharacterType> static 
Ref<StringImpl> convertASCIICase(StringImpl&, const CharacterType*, unsigned);
 

Reply via email to