Gentoo Archives: gentoo-commits

From: Michael Palimaka <kensington@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-qt/qtwebengine/, dev-qt/qtwebengine/files/
Date: Sun, 04 Jun 2017 13:19:51
Message-Id: 1496582378.90f45d0172ad22d6b8a6e77025499156b704dcc9.kensington@gentoo
1 commit: 90f45d0172ad22d6b8a6e77025499156b704dcc9
2 Author: Michael Palimaka <kensington <AT> gentoo <DOT> org>
3 AuthorDate: Sun Jun 4 13:19:23 2017 +0000
4 Commit: Michael Palimaka <kensington <AT> gentoo <DOT> org>
5 CommitDate: Sun Jun 4 13:19:38 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=90f45d01
7
8 dev-qt/qtwebengine: assorted fixes
9
10 * Add missing dependencies
11 * Remove unused dependencies
12 * Fix build with GCC 7
13 * Respect MAKEOPTS
14 * Make build log verbose
15
16 Gentoo-bug: 590920
17 Gentoo-bug: 592660
18 Gentoo-bug: 610830
19 Gentoo-bug: 610834
20 Gentoo-bug: 610848
21 Gentoo-bug: 610860
22 Gentoo-bug: 617896
23 Package-Manager: Portage-2.3.5, Repoman-2.3.2
24
25 .../files/qtwebengine-5.7.1-gcc-7.patch | 144 +++++++++++++++++++++
26 dev-qt/qtwebengine/qtwebengine-5.7.1-r1.ebuild | 9 +-
27 2 files changed, 149 insertions(+), 4 deletions(-)
28
29 diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.1-gcc-7.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.1-gcc-7.patch
30 new file mode 100644
31 index 00000000000..a5c3072a477
32 --- /dev/null
33 +++ b/dev-qt/qtwebengine/files/qtwebengine-5.7.1-gcc-7.patch
34 @@ -0,0 +1,144 @@
35 +From 64fdd317d4127142ad9e967197a2df6ac81ef55f Mon Sep 17 00:00:00 2001
36 +From: Allan Sandfeld Jensen <allan.jensen@××.io>
37 +Date: Wed, 29 Mar 2017 17:42:18 +0200
38 +Subject: [PATCH] Fix build with GCC 7.0
39 +MIME-Version: 1.0
40 +Content-Type: text/plain; charset=utf8
41 +Content-Transfer-Encoding: 8bit
42 +
43 +Fixes some ambiguities and outright wrong code GCC 7 doesn't accept but
44 +earlier compilers did.
45 +
46 +Task-number:QTBUG-59776
47 +Change-Id: I012f121842ac6cde49db0d571efc62aabe2115e3
48 +Reviewed-by: Michael Brüning <michael.bruning@××.io>
49 +---
50 + .../mojo/public/cpp/bindings/interface_ptr_info.h | 2 +-
51 + .../third_party/WebKit/Source/wtf/LinkedHashSet.h | 2 ++
52 + chromium/v8/src/objects-body-descriptors.h | 2 +-
53 + chromium/v8/src/objects-inl.h | 19 +++++++++++++++++++
54 + chromium/v8/src/objects.h | 16 ++--------------
55 + 5 files changed, 25 insertions(+), 16 deletions(-)
56 +
57 +diff --git a/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_ptr_info.h b/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_ptr_info.h
58 +index 5bd29d5..c94a5ac 100644
59 +--- a/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_ptr_info.h
60 ++++ b/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_ptr_info.h
61 +@@ -34,7 +34,7 @@ class InterfacePtrInfo {
62 +
63 + InterfacePtrInfo& operator=(InterfacePtrInfo&& other) {
64 + if (this != &other) {
65 +- handle_ = other.handle_.Pass();
66 ++ handle_ = std::move(other.handle_);
67 + version_ = other.version_;
68 + other.version_ = 0u;
69 + }
70 +--
71 +2.7.4
72 +From 493441248c82d9f39d0947e3bbf4571736e1cf85 Mon Sep 17 00:00:00 2001
73 +From: Allan Sandfeld Jensen <allan.jensen@××.io>
74 +Date: Wed, 29 Mar 2017 15:53:00 +0200
75 +Subject: [PATCH 1/1] Fix build with GCC 7.0
76 +MIME-Version: 1.0
77 +Content-Type: text/plain; charset=utf8
78 +Content-Transfer-Encoding: 8bit
79 +
80 +Fixes a few problems with using undeclared functions and ambigious
81 +code.
82 +
83 +Task-number: QTBUG-59776
84 +Change-Id: I59813919b4867d5dd3499a45baed004a1a1c1a3c
85 +Reviewed-by: Michael Brüning <michael.bruning@××.io>
86 +---
87 + chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h | 2 ++
88 + .../third_party/pdfium/fpdfsdk/javascript/global.cpp | 8 ++++----
89 + chromium/v8/src/objects-body-descriptors.h | 2 +-
90 + chromium/v8/src/objects-inl.h | 18 ++++++++++++++++++
91 + chromium/v8/src/objects.h | 16 ++--------------
92 + 5 files changed, 27 insertions(+), 19 deletions(-)
93 +
94 +diff --git a/src/3rdparty/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h b/src/3rdparty/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h
95 +index e85c72f..6f94cd6 100644
96 +--- a/src/3rdparty/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h
97 ++++ b/src/3rdparty/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h
98 +@@ -542,6 +542,8 @@ inline LinkedHashSet<T, U, V, W>& LinkedHashSet<T, U, V, W>::operator=(LinkedHas
99 + return *this;
100 + }
101 +
102 ++inline void swapAnchor(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b);
103 ++
104 + template<typename T, typename U, typename V, typename W>
105 + inline void LinkedHashSet<T, U, V, W>::swap(LinkedHashSet& other)
106 + {
107 +diff --git a/src/3rdparty/chromium/v8/src/objects-body-descriptors.h b/src/3rdparty/chromium/v8/src/objects-body-descriptors.h
108 +index 91cb888..a1c3634 100644
109 +--- a/src/3rdparty/chromium/v8/src/objects-body-descriptors.h
110 ++++ b/src/3rdparty/chromium/v8/src/objects-body-descriptors.h
111 +@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public BodyDescriptorBase {
112 +
113 + template <typename StaticVisitor>
114 + static inline void IterateBody(HeapObject* obj, int object_size) {
115 +- IterateBody(obj);
116 ++ IterateBody<StaticVisitor>(obj);
117 + }
118 + };
119 +
120 +diff --git a/src/3rdparty/chromium/v8/src/objects-inl.h b/src/3rdparty/chromium/v8/src/objects-inl.h
121 +index 58441d3..4c486ea 100644
122 +--- a/src/3rdparty/chromium/v8/src/objects-inl.h
123 ++++ b/src/3rdparty/chromium/v8/src/objects-inl.h
124 +@@ -7588,6 +7588,24 @@ bool GlobalDictionaryShape::IsDeleted(Dictionary* dict, int entry) {
125 + }
126 +
127 +
128 ++template <typename Derived, typename Shape, typename Key>
129 ++inline uint32_t HashTable<Derived,Shape,Key>::Hash(Key key) {
130 ++ if (Shape::UsesSeed) {
131 ++ return Shape::SeededHash(key, GetHeap()->HashSeed());
132 ++ } else {
133 ++ return Shape::Hash(key);
134 ++ }
135 ++}
136 ++
137 ++template <typename Derived, typename Shape, typename Key>
138 ++inline uint32_t HashTable<Derived,Shape,Key>::HashForObject(Key key, Object* object) {
139 ++ if (Shape::UsesSeed) {
140 ++ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
141 ++ } else {
142 ++ return Shape::HashForObject(key, object);
143 ++ }
144 ++}
145 ++
146 + bool ObjectHashTableShape::IsMatch(Handle<Object> key, Object* other) {
147 + return key->SameValue(other);
148 + }
149 +diff --git a/src/3rdparty/chromium/v8/src/objects.h b/src/3rdparty/chromium/v8/src/objects.h
150 +index 7d774be..42da5fa 100644
151 +--- a/src/3rdparty/chromium/v8/src/objects.h
152 ++++ b/src/3rdparty/chromium/v8/src/objects.h
153 +@@ -3194,21 +3194,9 @@ class HashTable : public HashTableBase {
154 + typedef Shape ShapeT;
155 +
156 + // Wrapper methods
157 +- inline uint32_t Hash(Key key) {
158 +- if (Shape::UsesSeed) {
159 +- return Shape::SeededHash(key, GetHeap()->HashSeed());
160 +- } else {
161 +- return Shape::Hash(key);
162 +- }
163 +- }
164 ++ inline uint32_t Hash(Key key);
165 +
166 +- inline uint32_t HashForObject(Key key, Object* object) {
167 +- if (Shape::UsesSeed) {
168 +- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
169 +- } else {
170 +- return Shape::HashForObject(key, object);
171 +- }
172 +- }
173 ++ inline uint32_t HashForObject(Key key, Object* object);
174 +
175 + // Returns a new HashTable object.
176 + MUST_USE_RESULT static Handle<Derived> New(
177 +--
178 +2.7.4
179
180 diff --git a/dev-qt/qtwebengine/qtwebengine-5.7.1-r1.ebuild b/dev-qt/qtwebengine/qtwebengine-5.7.1-r1.ebuild
181 index e93a1a6b149..f8c8f6b4d0e 100644
182 --- a/dev-qt/qtwebengine/qtwebengine-5.7.1-r1.ebuild
183 +++ b/dev-qt/qtwebengine/qtwebengine-5.7.1-r1.ebuild
184 @@ -3,7 +3,7 @@
185
186 EAPI=6
187 PYTHON_COMPAT=( python2_7 )
188 -inherit pax-utils python-any-r1 qt5-build
189 +inherit multiprocessing pax-utils python-any-r1 qt5-build
190
191 DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML applications"
192
193 @@ -24,12 +24,10 @@ RDEPEND="
194 ~dev-qt/qtnetwork-${PV}
195 ~dev-qt/qtwebchannel-${PV}[qml]
196 dev-libs/expat
197 - dev-libs/jsoncpp:=
198 dev-libs/libevent:=
199 dev-libs/libxml2
200 dev-libs/libxslt
201 dev-libs/protobuf:=
202 - media-libs/flac
203 media-libs/fontconfig
204 media-libs/freetype
205 media-libs/harfbuzz:=
206 @@ -38,12 +36,13 @@ RDEPEND="
207 media-libs/libwebp:=
208 media-libs/mesa
209 media-libs/opus
210 - media-libs/speex
211 net-libs/libsrtp:0=
212 sys-apps/dbus
213 sys-apps/pciutils
214 sys-libs/libcap
215 sys-libs/zlib[minizip]
216 + virtual/jpeg:0
217 + virtual/libudev
218 x11-libs/libdrm
219 x11-libs/libX11
220 x11-libs/libXcomposite
221 @@ -77,6 +76,7 @@ PATCHES=(
222 "${FILESDIR}/${PN}-5.7.0-fix-system-ffmpeg.patch"
223 "${FILESDIR}/${PN}-5.7.0-icu58.patch"
224 "${FILESDIR}/${PN}-5.7.0-undef-madv_free.patch"
225 + "${FILESDIR}/${PN}-5.7.1-gcc-7.patch"
226 )
227
228 src_prepare() {
229 @@ -98,6 +98,7 @@ src_prepare() {
230
231 src_configure() {
232 export NINJA_PATH=/usr/bin/ninja
233 + export NINJAFLAGS="-j$(makeopts_jobs) -l$(makeopts_loadavg "${MAKEOPTS}" 0) -v"
234
235 local myqmakeargs=(
236 $(usex alsa 'WEBENGINE_CONFIG+=use_alsa' '')