Gentoo Archives: gentoo-commits

From: "Anthony G. Basile" <blueness@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/musl:master commit in: dev-qt/qtwebkit/files/, dev-qt/qtwebkit/
Date: Thu, 01 Oct 2015 01:29:02
Message-Id: 1443663243.3fcb1d13734839637cf32d9a7eaf4bfa40e4406e.blueness@gentoo
1 commit: 3fcb1d13734839637cf32d9a7eaf4bfa40e4406e
2 Author: Wiktor W Brodlo <wiktor <AT> brodlo <DOT> net>
3 AuthorDate: Sat Sep 19 19:30:29 2015 +0000
4 Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
5 CommitDate: Thu Oct 1 01:34:03 2015 +0000
6 URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=3fcb1d13
7
8 dev-qt/qtwebkit: Disable backtrace, bug #560860
9
10 dev-qt/qtwebkit/Manifest | 7 ++
11 .../files/qtwebkit-5.2.1-disable-gstreamer.patch | 15 +++
12 .../files/qtwebkit-5.3.2-use-gstreamer010.patch | 18 ++++
13 .../files/qtwebkit-5.4.2-system-leveldb.patch | 25 +++++
14 ...webkit-5.5.0-fix-backtrace-detection-musl.patch | 22 +++++
15 dev-qt/qtwebkit/metadata.xml | 19 ++++
16 dev-qt/qtwebkit/qtwebkit-5.5.0-r99.ebuild | 102 +++++++++++++++++++++
17 7 files changed, 208 insertions(+)
18
19 diff --git a/dev-qt/qtwebkit/Manifest b/dev-qt/qtwebkit/Manifest
20 new file mode 100644
21 index 0000000..fd74f5a
22 --- /dev/null
23 +++ b/dev-qt/qtwebkit/Manifest
24 @@ -0,0 +1,7 @@
25 +AUX qtwebkit-5.2.1-disable-gstreamer.patch 766 SHA256 06b0aa301aadc5fb601beb67583dfe416bf840a1266ccef794981a7610218508 SHA512 cfe59ff3307769ddee1dc0de00097349f6392f605d3ebd2ed1e41e450685d9ce6fa99323d20331a4a25af6cb40cb49d12ee5a5883f5d5219316ac3068aa76353 WHIRLPOOL 71062b0c17dd2bde216a01517d1a890958359cdcd9a355f9f7d9b9c8f670ffad74284c4a07346197527d893802d94ef65a1d0e98fb98b4560306449f8d26bf71
26 +AUX qtwebkit-5.3.2-use-gstreamer010.patch 926 SHA256 444964b7af1ace629efb160efb434ca15e44ccd2c44ed8643019449b42268d3d SHA512 bc88474a7b3c8b4f86748e6913a302a5d7cc0b7837233aeb27904ccbcb8e25adef6f6e4ee039b0b161eda43c6504bb7cbf053d272884e9ab869279e962942dac WHIRLPOOL d3fc6a3dd0504cd9efb738fc39780a47b0d3c4875c54cb0c585a2b7f76da9083b3856ae5b74f0f3e4290471ff19e99bc24c1d6932aee7bf38a96636b12c68274
27 +AUX qtwebkit-5.4.2-system-leveldb.patch 703 SHA256 e0c5a2eda2b75e8c426752cf49dca55a89301edbcc2ce29d2e1f09690889e959 SHA512 c617d5e98fb2f2b2fa47a56af2b2daf1d37eec31054e69d36aa7fac00cc1a51dacaea3c4836564b63a9b881f843d543c74eeab3e9c272f90a8cd1330db3a0bf6 WHIRLPOOL 4c904c4506332eed4ee94c3c848be4751930ed1d33937afc913717cd4c568f170439cbc3e188a38034a603b76a72e533e657d92dbbe3a71a9bc75b6f8f9001d7
28 +AUX qtwebkit-5.5.0-fix-backtrace-detection-musl.patch 832 SHA256 2f626061cadac70a881b91f03e9b5671ecf848d6c619c38b75f0fe3fdf380463 SHA512 39ea30ae653b39b4e933f26acaa0d75e9ea4fbd3cd4843a404c887e7525183a722870e561512e7829f1d60e6f63628c2e79a19d03b47935cad6cc7f46e515e22 WHIRLPOOL ca0bf716dbc81d233af66a6aa0fb4ae96e28dffb493d5d6cf2af799fb5a7b3ee16f13e8fefc0d3fb28839cc7aaf3d696533cb76d4b8d4ef96b964757d1654039
29 +DIST qtwebkit-opensource-src-5.5.0.tar.xz 33483864 SHA256 17964996347d040a68b0c378a84b4b3874f1289c0d561b6868f7668402d9eeec SHA512 6255ec8d3a6fc067b25bf4f19ecbf256be339969a973768337d5452457d77030c229634d6be944d96ffbbdc3603ca00497ff8fac8bcf1b7051dad31612742d3e WHIRLPOOL 5866fa4d6cf002f083a88af19db1b2d517e6bf54e942c0d7c708bc4ef808071b1ab62d0ff85fe8baa0ac9bcc9b451e52a9911bc25d16d8d70e9a0825252293e2
30 +EBUILD qtwebkit-5.5.0-r99.ebuild 2989 SHA256 4911597479777dcafe6bc3230977a1949014149af0438d6ea3049297a66923f9 SHA512 6a3046b679451df67077b5ad20a259e13874a92e110ef1d780670a442bb69fd569dd808008c0ed7ba5ff6159046d1787a97478bda721a8b15a6dd98e956b55c6 WHIRLPOOL 2b59df14ef64b306a03e21eb6a5795cb2ab368f137edb5198a146147536a32d34db3b6d45f71c06035b9ee0011fc55b56585355effbb5428d68054eaa60365b0
31 +MISC metadata.xml 923 SHA256 f43643c520efe9e8b82c6a88223d296f0262a98eaa3dd6c87e4a8feac64c42e8 SHA512 6ac6e707a39e61540595d0522ca8e2d453e57a8c68071f8ce5b957389786b47f4b5c67b1572c5a8e36a54399e8cf4eed594280c3e6d60b02db52906b02d982f7 WHIRLPOOL 6eebe81091163c3ef908b0ebb6af86d6f5e6614e3f649e25f2dfff2a816e660ca660cb60767e3138251e22488326bdf9fa555db0b559e1bd1da033b99f2789b9
32
33 diff --git a/dev-qt/qtwebkit/files/qtwebkit-5.2.1-disable-gstreamer.patch b/dev-qt/qtwebkit/files/qtwebkit-5.2.1-disable-gstreamer.patch
34 new file mode 100644
35 index 0000000..05e41a1
36 --- /dev/null
37 +++ b/dev-qt/qtwebkit/files/qtwebkit-5.2.1-disable-gstreamer.patch
38 @@ -0,0 +1,15 @@
39 +--- Tools/qmake/mkspecs/features/features.prf 2014-03-19 18:35:47.795676444 +0000
40 ++++ Tools/qmake/mkspecs/features/features.prf 2014-03-19 18:36:38.602433220 +0000
41 +@@ -99,12 +99,6 @@
42 +
43 + # HTML5 Media Support for builds with GStreamer
44 + unix:!mac:!contains(QT_CONFIG, no-pkg-config) {
45 +- packagesExist("glib-2.0 gio-2.0 gstreamer-1.0 gstreamer-plugins-base-1.0") {
46 +- WEBKIT_CONFIG += video use_gstreamer
47 +- } else: packagesExist("glib-2.0 gio-2.0 \'gstreamer-0.10 >= 0.10.30\' \'gstreamer-plugins-base-0.10 >= 0.10.30\'") {
48 +- WEBKIT_CONFIG += video use_gstreamer use_gstreamer010
49 +- }
50 +- use?(gstreamer): WEBKIT_CONFIG += use_native_fullscreen_video
51 + }
52 +
53 + !enable?(video):qtHaveModule(multimediawidgets) {
54
55 diff --git a/dev-qt/qtwebkit/files/qtwebkit-5.3.2-use-gstreamer010.patch b/dev-qt/qtwebkit/files/qtwebkit-5.3.2-use-gstreamer010.patch
56 new file mode 100644
57 index 0000000..1c02e45
58 --- /dev/null
59 +++ b/dev-qt/qtwebkit/files/qtwebkit-5.3.2-use-gstreamer010.patch
60 @@ -0,0 +1,18 @@
61 +--- Tools/qmake/mkspecs/features/features.prf 2014-09-27 11:09:50.010617142 +0100
62 ++++ Tools/qmake/mkspecs/features/features.prf 2014-09-27 11:17:10.741678989 +0100
63 +@@ -96,14 +96,8 @@
64 + use?(3d_graphics): WEBKIT_CONFIG += webgl
65 +
66 + # HTML5 Media Support for builds with GStreamer
67 +- unix:!mac:!contains(QT_CONFIG, no-pkg-config) {
68 +- packagesExist("glib-2.0 gio-2.0 gstreamer-1.0 gstreamer-plugins-base-1.0") {
69 +- WEBKIT_CONFIG += video use_gstreamer
70 +- } else: packagesExist("glib-2.0 gio-2.0 \'gstreamer-0.10 >= 0.10.30\' \'gstreamer-plugins-base-0.10 >= 0.10.30\'") {
71 +- WEBKIT_CONFIG += video use_gstreamer use_gstreamer010
72 +- }
73 ++ WEBKIT_CONFIG += video use_gstreamer use_gstreamer010
74 + use?(gstreamer): WEBKIT_CONFIG += use_native_fullscreen_video
75 +- }
76 +
77 + !enable?(video):qtHaveModule(multimediawidgets) {
78 + WEBKIT_CONFIG += video use_qt_multimedia
79
80 diff --git a/dev-qt/qtwebkit/files/qtwebkit-5.4.2-system-leveldb.patch b/dev-qt/qtwebkit/files/qtwebkit-5.4.2-system-leveldb.patch
81 new file mode 100644
82 index 0000000..0a476c6
83 --- /dev/null
84 +++ b/dev-qt/qtwebkit/files/qtwebkit-5.4.2-system-leveldb.patch
85 @@ -0,0 +1,25 @@
86 +Correct header location so system dev-libs/leveldb can be detected.
87 +
88 +--- Tools/qmake/config.tests/leveldb/leveldb.cpp
89 ++++ Tools/qmake/config.tests/leveldb/leveldb.cpp
90 +@@ -19,7 +19,7 @@
91 +
92 + #include <leveldb/db.h>
93 + #include <leveldb/env.h>
94 +-#include <helpers/memenv/memenv.h>
95 ++#include <leveldb/helpers/memenv.h>
96 +
97 + int main(int, char**)
98 + {
99 +
100 +--- Source/WebCore/platform/leveldb/LevelDBDatabase.cpp
101 ++++ Source/WebCore/platform/leveldb/LevelDBDatabase.cpp
102 +@@ -38,7 +38,7 @@
103 + #include <leveldb/comparator.h>
104 + #include <leveldb/db.h>
105 + #include <leveldb/env.h>
106 +-#include <helpers/memenv/memenv.h>
107 ++#include <leveldb/helpers/memenv.h>
108 + #include <leveldb/slice.h>
109 + #include <string>
110 + #include <wtf/PassOwnPtr.h>
111
112 diff --git a/dev-qt/qtwebkit/files/qtwebkit-5.5.0-fix-backtrace-detection-musl.patch b/dev-qt/qtwebkit/files/qtwebkit-5.5.0-fix-backtrace-detection-musl.patch
113 new file mode 100644
114 index 0000000..73e085f
115 --- /dev/null
116 +++ b/dev-qt/qtwebkit/files/qtwebkit-5.5.0-fix-backtrace-detection-musl.patch
117 @@ -0,0 +1,22 @@
118 +https://github.com/meta-qt5/meta-qt5/blob/master/recipes-qt/qt5/qtwebkit/0003-Exclude-backtrace-API-for-non-glibc-libraries.patch
119 +
120 +--- a/Source/WTF/wtf/Assertions.cpp
121 ++++ b/Source/WTF/wtf/Assertions.cpp
122 +@@ -61,7 +61,7 @@
123 + #include <windows.h>
124 + #endif
125 +
126 +-#if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID)
127 ++#if (OS(DARWIN) || (OS(LINUX) && defined (__GLIBC__) && !defined(__UCLIBC__))) && !OS(ANDROID)
128 + #include <cxxabi.h>
129 + #include <dlfcn.h>
130 + #include <execinfo.h>
131 +@@ -245,7 +245,7 @@ void WTFReportArgumentAssertionFailure(const char* file, int line, const char* f
132 +
133 + void WTFGetBacktrace(void** stack, int* size)
134 + {
135 +-#if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID)
136 ++#if (OS(DARWIN) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__))) && !OS(ANDROID)
137 + *size = backtrace(stack, *size);
138 + #elif OS(WINDOWS) && !OS(WINCE)
139 + // The CaptureStackBackTrace function is available in XP, but it is not defined
140
141 diff --git a/dev-qt/qtwebkit/metadata.xml b/dev-qt/qtwebkit/metadata.xml
142 new file mode 100644
143 index 0000000..0ca02a9
144 --- /dev/null
145 +++ b/dev-qt/qtwebkit/metadata.xml
146 @@ -0,0 +1,19 @@
147 +<?xml version="1.0" encoding="UTF-8"?>
148 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
149 +<pkgmetadata>
150 + <herd>qt</herd>
151 + <use>
152 + <flag name="exceptions">Add support for exceptions - like catching them
153 + inside the event loop (recommended by upstream)</flag>
154 + <flag name="gstreamer">Enable HTML5 audio/video support via <pkg>media-libs/gstreamer:1.0</pkg></flag>
155 + <flag name="gstreamer010">Enable HTML5 audio/video support via <pkg>media-libs/gstreamer:0.10</pkg></flag>
156 + <flag name="multimedia">Enable HTML5 audio/video support via <pkg>dev-qt/qtmultimedia</pkg></flag>
157 + <flag name="printsupport">Enable printing via <pkg>dev-qt/qtprintsupport</pkg></flag>
158 + <flag name="qml">Build QML/QtQuick bindings</flag>
159 + <flag name="webp">Add support for WebP image format</flag>
160 + </use>
161 + <upstream>
162 + <bugs-to>https://bugreports.qt.io/</bugs-to>
163 + <doc>http://doc.qt.io/</doc>
164 + </upstream>
165 +</pkgmetadata>
166
167 diff --git a/dev-qt/qtwebkit/qtwebkit-5.5.0-r99.ebuild b/dev-qt/qtwebkit/qtwebkit-5.5.0-r99.ebuild
168 new file mode 100644
169 index 0000000..e63a930
170 --- /dev/null
171 +++ b/dev-qt/qtwebkit/qtwebkit-5.5.0-r99.ebuild
172 @@ -0,0 +1,102 @@
173 +# Copyright 1999-2015 Gentoo Foundation
174 +# Distributed under the terms of the GNU General Public License v2
175 +# $Id$
176 +
177 +EAPI=5
178 +PYTHON_COMPAT=( python2_7 )
179 +inherit python-any-r1 qt5-build
180 +
181 +DESCRIPTION="WebKit rendering library for the Qt5 framework (deprecated)"
182 +
183 +if [[ ${QT5_BUILD_TYPE} == release ]]; then
184 + KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
185 +fi
186 +
187 +# TODO: qttestlib, geolocation, orientation/sensors
188 +
189 +IUSE="gstreamer gstreamer010 multimedia opengl printsupport qml udev webp"
190 +REQUIRED_USE="?? ( gstreamer gstreamer010 multimedia )"
191 +
192 +RDEPEND="
193 + dev-db/sqlite:3
194 + dev-libs/icu:=
195 + >=dev-libs/leveldb-1.18-r1
196 + dev-libs/libxml2:2
197 + dev-libs/libxslt
198 + >=dev-qt/qtcore-${PV}:5[icu]
199 + >=dev-qt/qtgui-${PV}:5
200 + >=dev-qt/qtnetwork-${PV}:5
201 + >=dev-qt/qtsql-${PV}:5
202 + >=dev-qt/qtwidgets-${PV}:5
203 + media-libs/fontconfig:1.0
204 + media-libs/libpng:0=
205 + >=sys-libs/zlib-1.2.5
206 + virtual/jpeg:0
207 + virtual/opengl
208 + x11-libs/libX11
209 + x11-libs/libXcomposite
210 + x11-libs/libXrender
211 + gstreamer? (
212 + dev-libs/glib:2
213 + media-libs/gstreamer:1.0
214 + media-libs/gst-plugins-base:1.0
215 + )
216 + gstreamer010? (
217 + dev-libs/glib:2
218 + media-libs/gstreamer:0.10
219 + media-libs/gst-plugins-base:0.10
220 + )
221 + multimedia? ( >=dev-qt/qtmultimedia-${PV}:5[widgets] )
222 + opengl? ( >=dev-qt/qtopengl-${PV}:5 )
223 + printsupport? ( >=dev-qt/qtprintsupport-${PV}:5 )
224 + qml? ( >=dev-qt/qtdeclarative-${PV}:5 )
225 + udev? ( virtual/udev )
226 + webp? ( media-libs/libwebp:0= )
227 +"
228 +DEPEND="${RDEPEND}
229 + ${PYTHON_DEPS}
230 + dev-lang/ruby
231 + dev-util/gperf
232 + sys-devel/bison
233 + sys-devel/flex
234 + virtual/rubygems
235 +"
236 +
237 +PATCHES=(
238 + "${FILESDIR}/${PN}-5.4.2-system-leveldb.patch"
239 + "${FILESDIR}/${PN}-5.5.0-fix-backtrace-detection-musl.patch"
240 +)
241 +
242 +src_prepare() {
243 + # ensure bundled library cannot be used
244 + rm -r Source/ThirdParty/leveldb || die
245 +
246 + # bug 466216
247 + sed -i -e '/CONFIG +=/s/rpath//' \
248 + Source/WebKit/qt/declarative/{experimental/experimental,public}.pri \
249 + Tools/qmake/mkspecs/features/{force_static_libs_as_shared,unix/default_post}.prf \
250 + || die
251 +
252 + if use gstreamer010; then
253 + epatch "${FILESDIR}/${PN}-5.3.2-use-gstreamer010.patch"
254 + elif ! use gstreamer; then
255 + epatch "${FILESDIR}/${PN}-5.2.1-disable-gstreamer.patch"
256 + fi
257 + use multimedia || sed -i -e '/WEBKIT_CONFIG += video use_qt_multimedia/d' \
258 + Tools/qmake/mkspecs/features/features.prf || die
259 + use opengl || sed -i -e '/contains(QT_CONFIG, opengl): WEBKIT_CONFIG += use_3d_graphics/d' \
260 + Tools/qmake/mkspecs/features/features.prf || die
261 + use printsupport || sed -i -e '/WEBKIT_CONFIG += have_qtprintsupport/d' \
262 + Tools/qmake/mkspecs/features/features.prf || die
263 + use qml || sed -i -e '/have?(QTQUICK): SUBDIRS += declarative/d' \
264 + Source/QtWebKit.pro || die
265 + use udev || sed -i -e '/linux: WEBKIT_CONFIG += gamepad/d' \
266 + Tools/qmake/mkspecs/features/features.prf || die
267 + use webp || sed -i -e '/config_libwebp: WEBKIT_CONFIG += use_webp/d' \
268 + Tools/qmake/mkspecs/features/features.prf || die
269 +
270 + # bug 458222
271 + sed -i -e '/SUBDIRS += examples/d' Source/QtWebKit.pro || die
272 +
273 + qt5-build_src_prepare
274 +}