Gentoo Archives: gentoo-commits

From: Mart Raudsepp <leio@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-libs/webkit-gtk/
Date: Sun, 14 Oct 2018 12:06:07
Message-Id: 1539518735.397750445dd53fee8002275611b56a3cea397a7e.leio@gentoo
1 commit: 397750445dd53fee8002275611b56a3cea397a7e
2 Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
3 AuthorDate: Sun Oct 14 12:04:32 2018 +0000
4 Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
5 CommitDate: Sun Oct 14 12:05:35 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39775044
7
8 net-libs/webkit-gtk: security cleanup
9
10 Bug: https://bugs.gentoo.org/667892
11 Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
12 Package-Manager: Portage-2.3.49, Repoman-2.3.11
13
14 net-libs/webkit-gtk/Manifest | 2 -
15 net-libs/webkit-gtk/webkit-gtk-2.20.4.ebuild | 271 ---------------------------
16 net-libs/webkit-gtk/webkit-gtk-2.20.5.ebuild | 271 ---------------------------
17 3 files changed, 544 deletions(-)
18
19 diff --git a/net-libs/webkit-gtk/Manifest b/net-libs/webkit-gtk/Manifest
20 index 1a9c82c642f..2351bf98487 100644
21 --- a/net-libs/webkit-gtk/Manifest
22 +++ b/net-libs/webkit-gtk/Manifest
23 @@ -1,3 +1 @@
24 -DIST webkitgtk-2.20.4.tar.xz 16625400 BLAKE2B e2a07bbf38f059424738c69ecab7a1eee205cede2bbed4dedd0899e3d38c4b0b6b8f4fc52f5af6d65c0a0c8111c6c73d8765e55452a89022c476e90fb2ff8275 SHA512 3e6a370823d9a3521862fea0e7ae9f2455101afee247fda7b6d23ea609a0d1db3aeb86c41f903a89776550c190a2cf0baa903883671eca7222249849adc49090
25 -DIST webkitgtk-2.20.5.tar.xz 16625200 BLAKE2B 1fd803d81df1659fd87a93821413326eb798fe9c21af86deeb92f16b3f8eab14350851db499e79745457b708305d013032769416877660db3d5bc7c6058b13cc SHA512 d92fd079ec2826b2880ae5b2d90795ee3071a331bd7a576230b77b9f67a829ab27f09a9b0241a780f612f4f78ea5cc849e4b3d09285d4903eb600a7a7729c1e7
26 DIST webkitgtk-2.22.2.tar.xz 16769120 BLAKE2B 19b226e657a324ab0efcfdcda3b22bc21a3b1cae29325f89ebd555dfb45d02d23f495ebf3817cb4c5e662c813b8d75754e0051d84afb84ea1347bf25a321e5d0 SHA512 0bb885726872f128a0e0d71cbc75ba076e5c0c928c40e71e030c87444a7068568c568587514407d6549c27d0bfe121dc33f96f0c516d2ae1c6801e005ad52756
27
28 diff --git a/net-libs/webkit-gtk/webkit-gtk-2.20.4.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.20.4.ebuild
29 deleted file mode 100644
30 index b7b46a2a59f..00000000000
31 --- a/net-libs/webkit-gtk/webkit-gtk-2.20.4.ebuild
32 +++ /dev/null
33 @@ -1,271 +0,0 @@
34 -# Copyright 1999-2018 Gentoo Foundation
35 -# Distributed under the terms of the GNU General Public License v2
36 -
37 -EAPI=6
38 -CMAKE_MAKEFILE_GENERATOR="ninja"
39 -PYTHON_COMPAT=( python2_7 )
40 -USE_RUBY="ruby23 ruby24 ruby25"
41 -
42 -inherit check-reqs cmake-utils flag-o-matic gnome2 pax-utils python-any-r1 ruby-single toolchain-funcs virtualx
43 -
44 -MY_P="webkitgtk-${PV}"
45 -DESCRIPTION="Open source web browser engine"
46 -HOMEPAGE="https://www.webkitgtk.org"
47 -SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
48 -
49 -LICENSE="LGPL-2+ BSD"
50 -SLOT="4/37" # soname version of libwebkit2gtk-4.0
51 -KEYWORDS="amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~x86-macos"
52 -
53 -IUSE="aqua coverage doc +egl +geolocation gles2 gnome-keyring +gstreamer +introspection +jit libnotify nsplugin +opengl spell wayland +webgl +X"
54 -
55 -# webgl needs gstreamer, bug #560612
56 -REQUIRED_USE="
57 - geolocation? ( introspection )
58 - gles2? ( egl !opengl )
59 - introspection? ( gstreamer )
60 - nsplugin? ( X )
61 - webgl? ( gstreamer
62 - || ( gles2 opengl ) )
63 - wayland? ( egl )
64 - || ( aqua wayland X )
65 -"
66 -
67 -# Tests fail to link for inexplicable reasons
68 -# https://bugs.webkit.org/show_bug.cgi?id=148210
69 -RESTRICT="test"
70 -
71 -# Aqua support in gtk3 is untested
72 -# Dependencies found at Source/cmake/OptionsGTK.cmake
73 -# Various compile-time optionals for gtk+-3.22.0 - ensure it
74 -# Missing OpenWebRTC checks and conditionals, but ENABLE_MEDIA_STREAM/ENABLE_WEB_RTC is experimental upstream (PRIVATE OFF)
75 -RDEPEND="
76 - >=x11-libs/cairo-1.10.2:=[X?]
77 - >=media-libs/fontconfig-2.8.0:1.0
78 - >=media-libs/freetype-2.4.2:2
79 - >=dev-libs/libgcrypt-1.6.0:0=
80 - >=x11-libs/gtk+-3.22:3[aqua?,introspection?,wayland?,X?]
81 - >=media-libs/harfbuzz-1.3.3:=[icu(+)]
82 - >=dev-libs/icu-3.8.1-r1:=
83 - virtual/jpeg:0=
84 - >=net-libs/libsoup-2.48:2.4[introspection?]
85 - >=dev-libs/libxml2-2.8.0:2
86 - >=media-libs/libpng-1.4:0=
87 - dev-db/sqlite:3=
88 - sys-libs/zlib:0
89 - >=dev-libs/atk-2.8.0
90 - media-libs/libwebp:=
91 -
92 - >=dev-libs/glib-2.40:2
93 - >=dev-libs/libxslt-1.1.7
94 - media-libs/woff2
95 - gnome-keyring? ( app-crypt/libsecret )
96 - geolocation? ( >=app-misc/geoclue-2.1.5:2.0 )
97 - introspection? ( >=dev-libs/gobject-introspection-1.32.0:= )
98 - dev-libs/libtasn1:=
99 - >=dev-libs/libgcrypt-1.7.0:0=
100 - nsplugin? ( >=x11-libs/gtk+-2.24.10:2 )
101 - spell? ( >=app-text/enchant-0.22:= )
102 - gstreamer? (
103 - >=media-libs/gstreamer-1.2.3:1.0
104 - >=media-libs/gst-plugins-base-1.2.3:1.0
105 - >=media-libs/gst-plugins-bad-1.10:1.0[egl?,gles2?,opengl?] )
106 -
107 - X? (
108 - x11-libs/libX11
109 - x11-libs/libXcomposite
110 - x11-libs/libXdamage
111 - x11-libs/libXrender
112 - x11-libs/libXt )
113 -
114 - libnotify? ( x11-libs/libnotify )
115 - dev-libs/hyphen
116 -
117 - egl? ( media-libs/mesa[egl] )
118 - gles2? ( media-libs/mesa[gles2] )
119 - opengl? ( virtual/opengl )
120 - webgl? (
121 - x11-libs/libXcomposite
122 - x11-libs/libXdamage )
123 -"
124 -
125 -# paxctl needed for bug #407085
126 -# Need real bison, not yacc
127 -DEPEND="${RDEPEND}
128 - ${PYTHON_DEPS}
129 - ${RUBY_DEPS}
130 - >=app-accessibility/at-spi2-core-2.5.3
131 - >=dev-lang/perl-5.10
132 - >=dev-util/gtk-doc-am-1.10
133 - >=dev-util/gperf-3.0.1
134 - >=sys-devel/bison-2.4.3
135 - || ( >=sys-devel/gcc-4.9 >=sys-devel/clang-3.3 )
136 - sys-devel/gettext
137 - virtual/pkgconfig
138 -
139 - dev-lang/perl
140 - virtual/perl-Data-Dumper
141 - virtual/perl-Carp
142 - virtual/perl-JSON-PP
143 -
144 - doc? ( >=dev-util/gtk-doc-1.10 )
145 - geolocation? ( dev-util/gdbus-codegen )
146 - introspection? ( jit? ( sys-apps/paxctl ) )
147 -"
148 -# test? (
149 -# dev-python/pygobject:3[python_targets_python2_7]
150 -# x11-themes/hicolor-icon-theme
151 -# jit? ( sys-apps/paxctl ) )
152 -
153 -S="${WORKDIR}/${MY_P}"
154 -
155 -CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
156 -
157 -pkg_pretend() {
158 - if [[ ${MERGE_TYPE} != "binary" ]] ; then
159 - if is-flagq "-g*" && ! is-flagq "-g*0" ; then
160 - einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
161 - check-reqs_pkg_pretend
162 - fi
163 -
164 - if ! test-flag-CXX -std=c++11 ; then
165 - die "You need at least GCC 4.9.x or Clang >= 3.3 for C++11-specific compiler flags"
166 - fi
167 -
168 - if tc-is-gcc && [[ $(gcc-version) < 4.9 ]] ; then
169 - die 'The active compiler needs to be gcc 4.9 (or newer)'
170 - fi
171 - fi
172 -}
173 -
174 -pkg_setup() {
175 - if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
176 - check-reqs_pkg_setup
177 - fi
178 -
179 - python-any-r1_pkg_setup
180 -}
181 -
182 -src_prepare() {
183 - cmake-utils_src_prepare
184 - gnome2_src_prepare
185 -}
186 -
187 -src_configure() {
188 - # Respect CC, otherwise fails on prefix #395875
189 - tc-export CC
190 -
191 - # Arches without JIT support also need this to really disable it in all places
192 - use jit || append-cppflags -DENABLE_JIT=0 -DENABLE_YARR_JIT=0 -DENABLE_ASSEMBLER=0
193 -
194 - # It does not compile on alpha without this in LDFLAGS
195 - # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761
196 - use alpha && append-ldflags "-Wl,--no-relax"
197 -
198 - # ld segfaults on ia64 with LDFLAGS --as-needed, bug #555504
199 - use ia64 && append-ldflags "-Wl,--no-as-needed"
200 -
201 - # Sigbuses on SPARC with mcpu and co., bug #???
202 - use sparc && filter-flags "-mvis"
203 -
204 - # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
205 - use ppc64 && append-flags "-mminimal-toc"
206 -
207 - # Try to use less memory, bug #469942 (see Fedora .spec for reference)
208 - # --no-keep-memory doesn't work on ia64, bug #502492
209 - if ! use ia64; then
210 - append-ldflags "-Wl,--no-keep-memory"
211 - fi
212 -
213 - # We try to use gold when possible for this package
214 -# if ! tc-ld-is-gold ; then
215 -# append-ldflags "-Wl,--reduce-memory-overheads"
216 -# fi
217 -
218 - # Multiple rendering bugs on youtube, github, etc without this, bug #547224
219 - append-flags $(test-flags -fno-strict-aliasing)
220 -
221 - # Ruby situation is a bit complicated. See bug 513888
222 - local rubyimpl
223 - local ruby_interpreter=""
224 - for rubyimpl in ${USE_RUBY}; do
225 - if has_version "virtual/rubygems[ruby_targets_${rubyimpl}]"; then
226 - ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ${rubyimpl})"
227 - fi
228 - done
229 - # This will rarely occur. Only a couple of corner cases could lead us to
230 - # that failure. See bug 513888
231 - [[ -z $ruby_interpreter ]] && die "No suitable ruby interpreter found"
232 -
233 - # TODO: Check Web Audio support
234 - # should somehow let user select between them?
235 - #
236 - # FTL_JIT requires llvm
237 - #
238 - # opengl needs to be explicetly handled, bug #576634
239 -
240 - local opengl_enabled
241 - if use opengl || use gles2; then
242 - opengl_enabled=ON
243 - else
244 - opengl_enabled=OFF
245 - fi
246 -
247 - local mycmakeargs=(
248 - -DENABLE_QUARTZ_TARGET=$(usex aqua)
249 - -DENABLE_API_TESTS=$(usex test)
250 - -DENABLE_GTKDOC=$(usex doc)
251 - -DENABLE_GEOLOCATION=$(usex geolocation)
252 - $(cmake-utils_use_find_package gles2 OpenGLES2)
253 - -DENABLE_GLES2=$(usex gles2)
254 - -DENABLE_VIDEO=$(usex gstreamer)
255 - -DENABLE_WEB_AUDIO=$(usex gstreamer)
256 - -DENABLE_INTROSPECTION=$(usex introspection)
257 - -DENABLE_JIT=$(usex jit)
258 - -DUSE_LIBNOTIFY=$(usex libnotify)
259 - -DUSE_LIBSECRET=$(usex gnome-keyring)
260 - -DUSE_WOFF2=ON
261 - -DENABLE_PLUGIN_PROCESS_GTK2=$(usex nsplugin)
262 - -DENABLE_SPELLCHECK=$(usex spell)
263 - -DENABLE_WAYLAND_TARGET=$(usex wayland)
264 - -DENABLE_WEBGL=$(usex webgl)
265 - $(cmake-utils_use_find_package egl EGL)
266 - $(cmake-utils_use_find_package opengl OpenGL)
267 - -DENABLE_X11_TARGET=$(usex X)
268 - -DENABLE_OPENGL=${opengl_enabled}
269 - -DCMAKE_BUILD_TYPE=Release
270 - -DPORT=GTK
271 - ${ruby_interpreter}
272 - )
273 -
274 - # Allow it to use GOLD when possible as it has all the magic to
275 - # detect when to use it and using gold for this concrete package has
276 - # multiple advantages and is also the upstream default, bug #585788
277 -# if tc-ld-is-gold ; then
278 -# mycmakeargs+=( -DUSE_LD_GOLD=ON )
279 -# else
280 -# mycmakeargs+=( -DUSE_LD_GOLD=OFF )
281 -# fi
282 -
283 - cmake-utils_src_configure
284 -}
285 -
286 -src_compile() {
287 - cmake-utils_src_compile
288 -}
289 -
290 -src_test() {
291 - # Prevents test failures on PaX systems
292 - use jit && pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test*
293 -
294 - cmake-utils_src_test
295 -}
296 -
297 -src_install() {
298 - cmake-utils_src_install
299 -
300 - # Prevents crashes on PaX systems, bug #522808
301 - use jit && pax-mark m "${ED}usr/libexec/webkit2gtk-4.0/jsc" "${ED}usr/libexec/webkit2gtk-4.0/WebKitWebProcess"
302 - pax-mark m "${ED}usr/libexec/webkit2gtk-4.0/WebKitPluginProcess"
303 - use nsplugin && pax-mark m "${ED}usr/libexec/webkit2gtk-4.0/WebKitPluginProcess"2
304 -}
305
306 diff --git a/net-libs/webkit-gtk/webkit-gtk-2.20.5.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.20.5.ebuild
307 deleted file mode 100644
308 index 67e35f0c639..00000000000
309 --- a/net-libs/webkit-gtk/webkit-gtk-2.20.5.ebuild
310 +++ /dev/null
311 @@ -1,271 +0,0 @@
312 -# Copyright 1999-2018 Gentoo Foundation
313 -# Distributed under the terms of the GNU General Public License v2
314 -
315 -EAPI=6
316 -CMAKE_MAKEFILE_GENERATOR="ninja"
317 -PYTHON_COMPAT=( python2_7 )
318 -USE_RUBY="ruby23 ruby24 ruby25"
319 -
320 -inherit check-reqs cmake-utils flag-o-matic gnome2 pax-utils python-any-r1 ruby-single toolchain-funcs virtualx
321 -
322 -MY_P="webkitgtk-${PV}"
323 -DESCRIPTION="Open source web browser engine"
324 -HOMEPAGE="https://www.webkitgtk.org"
325 -SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
326 -
327 -LICENSE="LGPL-2+ BSD"
328 -SLOT="4/37" # soname version of libwebkit2gtk-4.0
329 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~x86-macos"
330 -
331 -IUSE="aqua coverage doc +egl +geolocation gles2 gnome-keyring +gstreamer +introspection +jit libnotify nsplugin +opengl spell wayland +webgl +X"
332 -
333 -# webgl needs gstreamer, bug #560612
334 -REQUIRED_USE="
335 - geolocation? ( introspection )
336 - gles2? ( egl !opengl )
337 - introspection? ( gstreamer )
338 - nsplugin? ( X )
339 - webgl? ( gstreamer
340 - || ( gles2 opengl ) )
341 - wayland? ( egl )
342 - || ( aqua wayland X )
343 -"
344 -
345 -# Tests fail to link for inexplicable reasons
346 -# https://bugs.webkit.org/show_bug.cgi?id=148210
347 -RESTRICT="test"
348 -
349 -# Aqua support in gtk3 is untested
350 -# Dependencies found at Source/cmake/OptionsGTK.cmake
351 -# Various compile-time optionals for gtk+-3.22.0 - ensure it
352 -# Missing OpenWebRTC checks and conditionals, but ENABLE_MEDIA_STREAM/ENABLE_WEB_RTC is experimental upstream (PRIVATE OFF)
353 -RDEPEND="
354 - >=x11-libs/cairo-1.10.2:=[X?]
355 - >=media-libs/fontconfig-2.8.0:1.0
356 - >=media-libs/freetype-2.4.2:2
357 - >=dev-libs/libgcrypt-1.6.0:0=
358 - >=x11-libs/gtk+-3.22:3[aqua?,introspection?,wayland?,X?]
359 - >=media-libs/harfbuzz-1.3.3:=[icu(+)]
360 - >=dev-libs/icu-3.8.1-r1:=
361 - virtual/jpeg:0=
362 - >=net-libs/libsoup-2.48:2.4[introspection?]
363 - >=dev-libs/libxml2-2.8.0:2
364 - >=media-libs/libpng-1.4:0=
365 - dev-db/sqlite:3=
366 - sys-libs/zlib:0
367 - >=dev-libs/atk-2.8.0
368 - media-libs/libwebp:=
369 -
370 - >=dev-libs/glib-2.40:2
371 - >=dev-libs/libxslt-1.1.7
372 - media-libs/woff2
373 - gnome-keyring? ( app-crypt/libsecret )
374 - geolocation? ( >=app-misc/geoclue-2.1.5:2.0 )
375 - introspection? ( >=dev-libs/gobject-introspection-1.32.0:= )
376 - dev-libs/libtasn1:=
377 - >=dev-libs/libgcrypt-1.7.0:0=
378 - nsplugin? ( >=x11-libs/gtk+-2.24.10:2 )
379 - spell? ( >=app-text/enchant-0.22:= )
380 - gstreamer? (
381 - >=media-libs/gstreamer-1.2.3:1.0
382 - >=media-libs/gst-plugins-base-1.2.3:1.0
383 - >=media-libs/gst-plugins-bad-1.10:1.0[egl?,gles2?,opengl?] )
384 -
385 - X? (
386 - x11-libs/libX11
387 - x11-libs/libXcomposite
388 - x11-libs/libXdamage
389 - x11-libs/libXrender
390 - x11-libs/libXt )
391 -
392 - libnotify? ( x11-libs/libnotify )
393 - dev-libs/hyphen
394 -
395 - egl? ( media-libs/mesa[egl] )
396 - gles2? ( media-libs/mesa[gles2] )
397 - opengl? ( virtual/opengl )
398 - webgl? (
399 - x11-libs/libXcomposite
400 - x11-libs/libXdamage )
401 -"
402 -
403 -# paxctl needed for bug #407085
404 -# Need real bison, not yacc
405 -DEPEND="${RDEPEND}
406 - ${PYTHON_DEPS}
407 - ${RUBY_DEPS}
408 - >=app-accessibility/at-spi2-core-2.5.3
409 - >=dev-lang/perl-5.10
410 - >=dev-util/gtk-doc-am-1.10
411 - >=dev-util/gperf-3.0.1
412 - >=sys-devel/bison-2.4.3
413 - || ( >=sys-devel/gcc-4.9 >=sys-devel/clang-3.3 )
414 - sys-devel/gettext
415 - virtual/pkgconfig
416 -
417 - dev-lang/perl
418 - virtual/perl-Data-Dumper
419 - virtual/perl-Carp
420 - virtual/perl-JSON-PP
421 -
422 - doc? ( >=dev-util/gtk-doc-1.10 )
423 - geolocation? ( dev-util/gdbus-codegen )
424 - introspection? ( jit? ( sys-apps/paxctl ) )
425 -"
426 -# test? (
427 -# dev-python/pygobject:3[python_targets_python2_7]
428 -# x11-themes/hicolor-icon-theme
429 -# jit? ( sys-apps/paxctl ) )
430 -
431 -S="${WORKDIR}/${MY_P}"
432 -
433 -CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
434 -
435 -pkg_pretend() {
436 - if [[ ${MERGE_TYPE} != "binary" ]] ; then
437 - if is-flagq "-g*" && ! is-flagq "-g*0" ; then
438 - einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
439 - check-reqs_pkg_pretend
440 - fi
441 -
442 - if ! test-flag-CXX -std=c++11 ; then
443 - die "You need at least GCC 4.9.x or Clang >= 3.3 for C++11-specific compiler flags"
444 - fi
445 -
446 - if tc-is-gcc && [[ $(gcc-version) < 4.9 ]] ; then
447 - die 'The active compiler needs to be gcc 4.9 (or newer)'
448 - fi
449 - fi
450 -}
451 -
452 -pkg_setup() {
453 - if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
454 - check-reqs_pkg_setup
455 - fi
456 -
457 - python-any-r1_pkg_setup
458 -}
459 -
460 -src_prepare() {
461 - cmake-utils_src_prepare
462 - gnome2_src_prepare
463 -}
464 -
465 -src_configure() {
466 - # Respect CC, otherwise fails on prefix #395875
467 - tc-export CC
468 -
469 - # Arches without JIT support also need this to really disable it in all places
470 - use jit || append-cppflags -DENABLE_JIT=0 -DENABLE_YARR_JIT=0 -DENABLE_ASSEMBLER=0
471 -
472 - # It does not compile on alpha without this in LDFLAGS
473 - # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761
474 - use alpha && append-ldflags "-Wl,--no-relax"
475 -
476 - # ld segfaults on ia64 with LDFLAGS --as-needed, bug #555504
477 - use ia64 && append-ldflags "-Wl,--no-as-needed"
478 -
479 - # Sigbuses on SPARC with mcpu and co., bug #???
480 - use sparc && filter-flags "-mvis"
481 -
482 - # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
483 - use ppc64 && append-flags "-mminimal-toc"
484 -
485 - # Try to use less memory, bug #469942 (see Fedora .spec for reference)
486 - # --no-keep-memory doesn't work on ia64, bug #502492
487 - if ! use ia64; then
488 - append-ldflags "-Wl,--no-keep-memory"
489 - fi
490 -
491 - # We try to use gold when possible for this package
492 -# if ! tc-ld-is-gold ; then
493 -# append-ldflags "-Wl,--reduce-memory-overheads"
494 -# fi
495 -
496 - # Multiple rendering bugs on youtube, github, etc without this, bug #547224
497 - append-flags $(test-flags -fno-strict-aliasing)
498 -
499 - # Ruby situation is a bit complicated. See bug 513888
500 - local rubyimpl
501 - local ruby_interpreter=""
502 - for rubyimpl in ${USE_RUBY}; do
503 - if has_version "virtual/rubygems[ruby_targets_${rubyimpl}]"; then
504 - ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ${rubyimpl})"
505 - fi
506 - done
507 - # This will rarely occur. Only a couple of corner cases could lead us to
508 - # that failure. See bug 513888
509 - [[ -z $ruby_interpreter ]] && die "No suitable ruby interpreter found"
510 -
511 - # TODO: Check Web Audio support
512 - # should somehow let user select between them?
513 - #
514 - # FTL_JIT requires llvm
515 - #
516 - # opengl needs to be explicetly handled, bug #576634
517 -
518 - local opengl_enabled
519 - if use opengl || use gles2; then
520 - opengl_enabled=ON
521 - else
522 - opengl_enabled=OFF
523 - fi
524 -
525 - local mycmakeargs=(
526 - -DENABLE_QUARTZ_TARGET=$(usex aqua)
527 - -DENABLE_API_TESTS=$(usex test)
528 - -DENABLE_GTKDOC=$(usex doc)
529 - -DENABLE_GEOLOCATION=$(usex geolocation)
530 - $(cmake-utils_use_find_package gles2 OpenGLES2)
531 - -DENABLE_GLES2=$(usex gles2)
532 - -DENABLE_VIDEO=$(usex gstreamer)
533 - -DENABLE_WEB_AUDIO=$(usex gstreamer)
534 - -DENABLE_INTROSPECTION=$(usex introspection)
535 - -DENABLE_JIT=$(usex jit)
536 - -DUSE_LIBNOTIFY=$(usex libnotify)
537 - -DUSE_LIBSECRET=$(usex gnome-keyring)
538 - -DUSE_WOFF2=ON
539 - -DENABLE_PLUGIN_PROCESS_GTK2=$(usex nsplugin)
540 - -DENABLE_SPELLCHECK=$(usex spell)
541 - -DENABLE_WAYLAND_TARGET=$(usex wayland)
542 - -DENABLE_WEBGL=$(usex webgl)
543 - $(cmake-utils_use_find_package egl EGL)
544 - $(cmake-utils_use_find_package opengl OpenGL)
545 - -DENABLE_X11_TARGET=$(usex X)
546 - -DENABLE_OPENGL=${opengl_enabled}
547 - -DCMAKE_BUILD_TYPE=Release
548 - -DPORT=GTK
549 - ${ruby_interpreter}
550 - )
551 -
552 - # Allow it to use GOLD when possible as it has all the magic to
553 - # detect when to use it and using gold for this concrete package has
554 - # multiple advantages and is also the upstream default, bug #585788
555 -# if tc-ld-is-gold ; then
556 -# mycmakeargs+=( -DUSE_LD_GOLD=ON )
557 -# else
558 -# mycmakeargs+=( -DUSE_LD_GOLD=OFF )
559 -# fi
560 -
561 - cmake-utils_src_configure
562 -}
563 -
564 -src_compile() {
565 - cmake-utils_src_compile
566 -}
567 -
568 -src_test() {
569 - # Prevents test failures on PaX systems
570 - use jit && pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test*
571 -
572 - cmake-utils_src_test
573 -}
574 -
575 -src_install() {
576 - cmake-utils_src_install
577 -
578 - # Prevents crashes on PaX systems, bug #522808
579 - use jit && pax-mark m "${ED}usr/libexec/webkit2gtk-4.0/jsc" "${ED}usr/libexec/webkit2gtk-4.0/WebKitWebProcess"
580 - pax-mark m "${ED}usr/libexec/webkit2gtk-4.0/WebKitPluginProcess"
581 - use nsplugin && pax-mark m "${ED}usr/libexec/webkit2gtk-4.0/WebKitPluginProcess"2
582 -}