commit:     3c5c66405173f7e5782d42331ae34de392b772d7
Author:     Jimi Huotari <chiitoo <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 16 11:36:27 2018 +0000
Commit:     Jimi Huotari <chiitoo <AT> gentoo <DOT> org>
CommitDate: Thu Aug 16 12:19:20 2018 +0000
URL:        https://gitweb.gentoo.org/proj/qt.git/commit/?id=3c5c6640

dev-qt/qtwebengine: disable 'webrtc' in 5.12

The related Chromium parts seem to require '>=media-libs/libvpx-1.8'
now, which is not yet available, so disable 'webrtc' for now to
allow for the build to complete.

Also add a patch to fix build without 'webrtc'.

Related required upstream revision (thanks to Arfrever):
https://chromium.googlesource.com/webm/libvpx/+/bd1d995c

Package-Manager: Portage-2.3.46, Repoman-2.3.10

 .../qtwebengine-5.12.0-build-without-webrtc.patch  | 81 ++++++++++++++++++++++
 dev-qt/qtwebengine/qtwebengine-5.12.9999.ebuild    |  2 +
 dev-qt/qtwebengine/qtwebengine-5.9999.ebuild       |  2 +
 3 files changed, 85 insertions(+)

diff --git 
a/dev-qt/qtwebengine/files/qtwebengine-5.12.0-build-without-webrtc.patch 
b/dev-qt/qtwebengine/files/qtwebengine-5.12.0-build-without-webrtc.patch
new file mode 100644
index 00000000..bb82be20
--- /dev/null
+++ b/dev-qt/qtwebengine/files/qtwebengine-5.12.0-build-without-webrtc.patch
@@ -0,0 +1,81 @@
+From f500275e774945c8c19dc3e763510f04bca52261 Mon Sep 17 00:00:00 2001
+From: Allan Sandfeld Jensen <[email protected]>
+Date: Tue, 31 Jul 2018 15:42:09 +0200
+Subject: Fix build with plugins enabled and webrtc disabled
+
+Change-Id: I2f4f9517943571ba89fdb6a48fd4381d179a96a6
+Reviewed-by: Alexandru Croitor <[email protected]>
+---
+ chromium/content/renderer/pepper/pepper_media_device_manager.cc | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/chromium/content/renderer/pepper/pepper_media_device_manager.cc 
b/chromium/content/renderer/pepper/pepper_media_device_manager.cc
+index 2a1593afe4..99f2c3fb7f 100644
+--- 
a/src/3rdparty/chromium/content/renderer/pepper/pepper_media_device_manager.cc
++++ 
b/src/3rdparty/chromium/content/renderer/pepper/pepper_media_device_manager.cc
+@@ -114,9 +114,10 @@ void PepperMediaDeviceManager::EnumerateDevices(
+                      callback, ToMediaDeviceType(type)));
+ #else
+   base::ThreadTaskRunnerHandle::Get()->PostTask(
+-      FROM_HERE, base::Bind(&PepperMediaDeviceManager::DevicesEnumerated,
+-                            AsWeakPtr(), callback, ToMediaDeviceType(type),
+-                            std::vector<MediaDeviceInfoArray>()));
++      FROM_HERE, base::BindOnce(&PepperMediaDeviceManager::DevicesEnumerated,
++                                AsWeakPtr(), callback, 
ToMediaDeviceType(type),
++                                std::vector<MediaDeviceInfoArray>(),
++                                
std::vector<blink::mojom::VideoInputDeviceCapabilitiesPtr>()));
+ #endif
+ }
+ 
+-- 
+cgit v1.2.1
+
+From 26d7e8597239035a2b57c73c92743dcdeffa9368 Mon Sep 17 00:00:00 2001
+From: Allan Sandfeld Jensen <[email protected]>
+Date: Tue, 31 Jul 2018 18:40:01 +0200
+Subject: FIXUP: Fix build with plugins enabled and webrtc disabled
+
+Also fix linking error, and turn it into a compiler error in the future.
+
+Change-Id: Ic6841eb70b40bd894495036d9d8d5a0a78fcf2b0
+Reviewed-by: Alexandru Croitor <[email protected]>
+---
+ chromium/content/renderer/pepper/pepper_media_device_manager.cc | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/chromium/content/renderer/pepper/pepper_media_device_manager.cc 
b/chromium/content/renderer/pepper/pepper_media_device_manager.cc
+index 99f2c3fb7f..19ff8c2e02 100644
+--- 
a/src/3rdparty/chromium/content/renderer/pepper/pepper_media_device_manager.cc
++++ 
b/src/3rdparty/chromium/content/renderer/pepper/pepper_media_device_manager.cc
+@@ -12,13 +12,16 @@
+ #include "base/threading/thread_task_runner_handle.h"
+ #include "content/public/common/console_message_level.h"
+ #include "content/public/common/content_features.h"
+-#include "content/renderer/media/stream/media_stream_device_observer.h"
+ #include "content/renderer/pepper/renderer_ppapi_host_impl.h"
+ #include "content/renderer/render_frame_impl.h"
+ #include "media/media_buildflags.h"
+ #include "ppapi/shared_impl/ppb_device_ref_shared.h"
+ #include "services/service_manager/public/cpp/interface_provider.h"
+ 
++#if BUILDFLAG(ENABLE_WEBRTC)
++#include "content/renderer/media/stream/media_stream_device_observer.h"
++#endif
++
+ namespace content {
+ 
+ namespace {
+@@ -267,8 +270,10 @@ void PepperMediaDeviceManager::OnDeviceOpened(int 
request_id,
+     return;
+   }
+ 
++#if BUILDFLAG(ENABLE_WEBRTC)
+   if (success)
+     GetMediaStreamDeviceObserver()->AddStream(label, device);
++#endif
+ 
+   OpenDeviceCallback callback = iter->second;
+   open_callbacks_.erase(iter);
+-- 
+cgit v1.2.1
+

diff --git a/dev-qt/qtwebengine/qtwebengine-5.12.9999.ebuild 
b/dev-qt/qtwebengine/qtwebengine-5.12.9999.ebuild
index dfd139a4..ef85e758 100644
--- a/dev-qt/qtwebengine/qtwebengine-5.12.9999.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-5.12.9999.ebuild
@@ -79,6 +79,7 @@ DEPEND="${RDEPEND}
 "
 
 PATCHES+=(
+       "${FILESDIR}/${PN}-5.12.0-build-without-webrtc.patch"
        "${FILESDIR}/${PN}-5.12.0-libxml2-disable-catalogs.patch" # bug 653078
 )
 
@@ -112,6 +113,7 @@ src_configure() {
                -opus
                -printing-and-pdf
                -webp
+               -no-webengine-webrtc
                $(usex alsa '-alsa' '')
                $(usex bindist '' '-proprietary-codecs')
                $(usex pulseaudio '-pulseaudio' '')

diff --git a/dev-qt/qtwebengine/qtwebengine-5.9999.ebuild 
b/dev-qt/qtwebengine/qtwebengine-5.9999.ebuild
index dfd139a4..ef85e758 100644
--- a/dev-qt/qtwebengine/qtwebengine-5.9999.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-5.9999.ebuild
@@ -79,6 +79,7 @@ DEPEND="${RDEPEND}
 "
 
 PATCHES+=(
+       "${FILESDIR}/${PN}-5.12.0-build-without-webrtc.patch"
        "${FILESDIR}/${PN}-5.12.0-libxml2-disable-catalogs.patch" # bug 653078
 )
 
@@ -112,6 +113,7 @@ src_configure() {
                -opus
                -printing-and-pdf
                -webp
+               -no-webengine-webrtc
                $(usex alsa '-alsa' '')
                $(usex bindist '' '-proprietary-codecs')
                $(usex pulseaudio '-pulseaudio' '')

Reply via email to