From 90652af7cd23dffd9a30abc2a2f6baff35f1438c Mon Sep 17 00:00:00 2001 From: Raphael Kubo da Costa Date: Thu, 17 Aug 2017 15:56:11 +0000 Subject: [PATCH] New port: www/qt5-webengine. Qt WebEngine provides functionality for rendering regions of dynamic web content. In other words, this is Chromium's Blink web engine and parts of Chromium's content layer wrapped by Qt. Qt WebKit is deprecated upstream, and WebEngine is the future. This port has been in the works for a very long time, with contributions by myself, tcberner, Adriaan de Groot and Marie Loise Nolden. Since most of the port is just a large part of Chromium's code base, this means sharing some of the pain www/chromium goes through by having to patch a ton of files. We cannot share the exact same patches because this version of Qt WebEngine is based on an older Chromium release. I have verified that the port works, but it is possible that many things are still wrong or missing, so bug reports are encouraged. Reviewed by: Adriaan de Groot , tcberner Differential Revision: https://reviews.freebsd.org/D12063 --- Mk/bsd.qt.mk | 9 +- devel/qt5/distinfo | 2 + www/Makefile | 1 + www/qt5-webengine/Makefile | 105 ++++++++++ www/qt5-webengine/distinfo | 1 + www/qt5-webengine/files/freebsd.pri | 16 ++ .../patch-src_3rdparty_chromium_base_base.gyp | 13 ++ ...patch-src_3rdparty_chromium_base_base.gypi | 17 ++ ..._base_files_file__path__watcher__kqueue.cc | 13 ++ ...m_base_files_file__path__watcher__kqueue.h | 14 ++ ..._base_posix_unix__domain__socket__linux.cc | 44 ++++ ...rty_chromium_base_process_memory__stubs.cc | 15 ++ ...ty_chromium_base_process_process__posix.cc | 10 + ..._base_threading_platform__thread__linux.cc | 21 ++ ...base_trace__event_process__memory__dump.cc | 29 +++ ...3rdparty_chromium_base_tracked__objects.cc | 11 + ...ch-src_3rdparty_chromium_build_common.gypi | 16 ++ ...y_chromium_build_linux_unbundle_libusb.gyp | 20 ++ ...omium_content_app_content__main__runner.cc | 30 +++ ...ium_content_browser_browser__main__loop.cc | 20 ++ ...ontent_browser_child__process__launcher.cc | 38 ++++ ..._browser_download_file__metadata__linux.cc | 20 ++ ..._host_render__widget__host__view__guest.cc | 16 ++ ..._geolocation_location__arbitrator__impl.cc | 11 + ...rty_chromium_content_content__browser.gypi | 33 +++ ...arty_chromium_content_content__common.gypi | 32 +++ ...chromium_content_gpu_gpu__child__thread.cc | 18 ++ ...3rdparty_chromium_content_gpu_gpu__main.cc | 45 ++++ ...enderer_devtools_v8__sampling__profiler.cc | 21 ++ ...nderer__main__platform__delegate__linux.cc | 18 ++ ...-src_3rdparty_chromium_crypto_nss__util.cc | 24 +++ ...dparty_chromium_device_usb_usb__context.cc | 22 ++ ..._chromium_device_usb_usb__service__impl.cc | 48 +++++ ...y_chromium_device_usb_usb__service__impl.h | 33 +++ ...src_3rdparty_chromium_gpu_gpu__config.gypi | 17 ++ ...o_file__video__capture__device__factory.cc | 11 + ...ure_video_linux_v4l2__capture__delegate.cc | 21 ++ ...deo_linux_video__capture__device__linux.cc | 25 +++ ...ia_capture_video_video__capture__device.cc | 20 ++ ...dia_capture_video_video__capture__device.h | 38 ++++ ...e_video_video__capture__device__factory.cc | 11 + ...party_chromium_media_filters_vp9__parser.h | 10 + ...atch-src_3rdparty_chromium_media_media.gyp | 20 ++ ...hromium_net_base_address__tracker__linux.h | 15 ++ ...ium_net_base_network__interfaces__posix.cc | 21 ++ ...chromium_net_dns_address__sorter__posix.cc | 11 + ...3rdparty_chromium_net_dns_dns__reloader.cc | 17 ++ .../patch-src_3rdparty_chromium_net_net.gypi | 33 +++ ...mpl_private_net__address__private__impl.cc | 10 + ...c_3rdparty_chromium_skia_skia__chrome.gypi | 11 + ...Source_bindings_core_v8_V8ScriptRunner.cpp | 11 + ...m_third__party_WebKit_Source_core_core.gyp | 34 +++ ...WebKit_Source_platform_blink__platform.gyp | 38 ++++ ...Source_platform_fonts_FontPlatformData.cpp | 11 + ...t_Source_platform_heap_StackFrameDepth.cpp | 11 + ...ium_third__party_WebKit_Source_web_web.gyp | 11 + ..._third__party_WebKit_Source_wtf_ByteSwap.h | 18 ++ ...romium_third__party_ffmpeg_libavutil_mem.c | 12 ++ ...omium_third__party_libjingle_libjingle.gyp | 11 + ...rd__party_ots_include_opentype-sanitiser.h | 12 ++ ...c_cpp_src_sfntly_table_core_cmap__table.cc | 47 +++++ ...ird__party_webrtc_base_platform__thread.cc | 29 +++ ...ium_third__party_webrtc_base_taskrunner.cc | 11 + ...mium_third__party_webrtc_build_common.gypi | 18 ++ ...c_modules_rtp__rtcp_source_rtp__utility.cc | 11 + ...dules_video__capture_device__info__impl.cc | 10 + ...system__wrappers_source_atomic32__posix.cc | 10 + ...em__wrappers_source_condition__variable.cc | 20 ++ ...rtc_voice__engine_voice__engine__defines.h | 25 +++ ...arty_chromium_ui_events_event__switches.cc | 11 + ...party_chromium_ui_events_event__switches.h | 11 + .../patch-src_3rdparty_chromium_ui_gl_gl.gyp | 20 ++ ...arty_chromium_v8_src_crankshaft_lithium.cc | 14 ++ ...party_chromium_v8_src_crankshaft_lithium.h | 14 ++ .../files/patch-src_core_core__common.pri | 13 ++ .../files/patch-src_core_core__module.pro | 13 ++ .../files/patch-src_core_gyp__run.pro | 13 ++ .../files/patch-src_core_qtwebengine.gypi | 11 + ...tools-qmake-config.tests-enable-on-FreeBSD | 22 ++ ...tools_qmake_mkspecs_features_configure.prf | 29 +++ ...tools_qmake_mkspecs_features_functions.prf | 11 + www/qt5-webengine/pkg-plist | 195 ++++++++++++++++++ 82 files changed, 1801 insertions(+), 3 deletions(-) create mode 100644 www/qt5-webengine/Makefile create mode 100644 www/qt5-webengine/distinfo create mode 100644 www/qt5-webengine/files/freebsd.pri create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base.gyp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base.gypi create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher__kqueue.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher__kqueue.h create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_base_posix_unix__domain__socket__linux.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_memory__stubs.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__posix.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__linux.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_base_trace__event_process__memory__dump.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_base_tracked__objects.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_build_common.gypi create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_build_linux_unbundle_libusb.gyp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_app_content__main__runner.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_browser__main__loop.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_child__process__launcher.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_download_file__metadata__linux.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_frame__host_render__widget__host__view__guest.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_geolocation_location__arbitrator__impl.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_content__browser.gypi create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_content__common.gypi create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__child__thread.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__main.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_devtools_v8__sampling__profiler.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__main__platform__delegate__linux.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_crypto_nss__util.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__context.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.h create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_gpu__config.gypi create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_file__video__capture__device__factory.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__linux.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device.h create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__factory.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_media_filters_vp9__parser.h create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_media_media.gyp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_address__tracker__linux.h create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_network__interfaces__posix.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_net_dns_address__sorter__posix.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_net_dns_dns__reloader.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_net_net.gypi create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_ppapi_shared__impl_private_net__address__private__impl.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_skia_skia__chrome.gypi create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_bindings_core_v8_V8ScriptRunner.cpp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_core_core.gyp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_blink__platform.gyp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_fonts_FontPlatformData.cpp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_heap_StackFrameDepth.cpp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_web_web.gyp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_wtf_ByteSwap.h create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_mem.c create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_libjingle_libjingle.gyp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_ots_include_opentype-sanitiser.h create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_sfntly_src_cpp_src_sfntly_table_core_cmap__table.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_base_platform__thread.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_base_taskrunner.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_build_common.gypi create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_rtp__rtcp_source_rtp__utility.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_video__capture_device__info__impl.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_system__wrappers_source_atomic32__posix.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_system__wrappers_source_condition__variable.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_voice__engine_voice__engine__defines.h create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_events_event__switches.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_events_event__switches.h create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl.gyp create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_crankshaft_lithium.cc create mode 100644 www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_crankshaft_lithium.h create mode 100644 www/qt5-webengine/files/patch-src_core_core__common.pri create mode 100644 www/qt5-webengine/files/patch-src_core_core__module.pro create mode 100644 www/qt5-webengine/files/patch-src_core_gyp__run.pro create mode 100644 www/qt5-webengine/files/patch-src_core_qtwebengine.gypi create mode 100644 www/qt5-webengine/files/patch-tools-qmake-config.tests-enable-on-FreeBSD create mode 100644 www/qt5-webengine/files/patch-tools_qmake_mkspecs_features_configure.prf create mode 100644 www/qt5-webengine/files/patch-tools_qmake_mkspecs_features_functions.prf create mode 100644 www/qt5-webengine/pkg-plist diff --git a/Mk/bsd.qt.mk b/Mk/bsd.qt.mk index 978b8d049bd4..c4f7850a2200 100644 --- a/Mk/bsd.qt.mk +++ b/Mk/bsd.qt.mk @@ -92,8 +92,8 @@ QT_DIST= 3d base canvas3d charts connectivity datavis3d declarative \ declarative-render2d gamepad graphicaleffects imageformats \ location multimedia quickcontrols quickcontrols2 script scxml \ sensors serialbus serialport svg tools translations \ - virtualkeyboard wayland webchannel websockets x11extras \ - xmlpatterns + virtualkeyboard wayland webchannel webengine \ + websockets x11extras xmlpatterns . endif . endif @@ -321,7 +321,7 @@ _USE_QT5_ONLY= 3d buildtools canvas3d charts concurrent connectivity \ qdbus qdoc qdoc-data qev qml quick quickcontrols \ quickcontrols2 scxml sensors serialbus serialport \ sql-tds uiplugin uitools virtualkeyboard wayland webchannel \ - websockets websockets-qml widgets x11extras + webengine websockets websockets-qml widgets x11extras 3d_PORT= graphics/${_QT_RELNAME}-3d 3d_LIB= libQt${_QT_LIBVER}3DCore.so @@ -592,6 +592,9 @@ virtualkeyboard_PATH= ${QT_PLUGINDIR}/platforminputcontexts/libqtvirtualkeyboard webchannel_PORT= www/${_QT_RELNAME}-webchannel webchannel_LIB= libQt${_QT_LIBVER}WebChannel.so +webengine_PORT= www/${_QT_RELNAME}-webengine +webengine_LIB= libQt${_QT_LIBVER}WebEngine.so + websockets_PORT= www/${_QT_RELNAME}-websockets websockets_LIB= libQt${_QT_LIBVER}WebSockets.so diff --git a/devel/qt5/distinfo b/devel/qt5/distinfo index 29089b8c32f7..b15552722b75 100644 --- a/devel/qt5/distinfo +++ b/devel/qt5/distinfo @@ -51,6 +51,8 @@ SHA256 (KDE/Qt/5.7.1/qtwayland-opensource-src-5.7.1.tar.xz) = f23fc5e180c8af5b38 SIZE (KDE/Qt/5.7.1/qtwayland-opensource-src-5.7.1.tar.xz) = 291776 SHA256 (KDE/Qt/5.7.1/qtwebchannel-opensource-src-5.7.1.tar.xz) = 63ab3ac76ff993009cfa978162a764e05b763cacb70d1a862893f8de4492319b SIZE (KDE/Qt/5.7.1/qtwebchannel-opensource-src-5.7.1.tar.xz) = 122436 +SHA256 (KDE/Qt/5.7.1/qtwebengine-opensource-src-5.7.1.tar.xz) = 2101883e3d632b50133a14e3bbdc1d4d649e405c9618f2eef1b72a7b821ccc2b +SIZE (KDE/Qt/5.7.1/qtwebengine-opensource-src-5.7.1.tar.xz) = 163782564 SHA256 (KDE/Qt/5.7.1/qtwebsockets-opensource-src-5.7.1.tar.xz) = 5c2a75b68e7f2e98530659b33bb08edee83013832dbf99cc5b40afc8a90652d1 SIZE (KDE/Qt/5.7.1/qtwebsockets-opensource-src-5.7.1.tar.xz) = 193204 SHA256 (KDE/Qt/5.7.1/qtx11extras-opensource-src-5.7.1.tar.xz) = 5f5a0c2cc66ec01c2f2f31eff32fea26bd0bc03741a5dfd803b13870aa4ce427 diff --git a/www/Makefile b/www/Makefile index 9e541279caf4..b02d8ddfe1ae 100644 --- a/www/Makefile +++ b/www/Makefile @@ -1864,6 +1864,7 @@ SUBDIR += qooxdoo SUBDIR += qt4-webkit SUBDIR += qt5-webchannel + SUBDIR += qt5-webengine SUBDIR += qt5-webkit SUBDIR += qt5-websockets SUBDIR += qt5-websockets-qml diff --git a/www/qt5-webengine/Makefile b/www/qt5-webengine/Makefile new file mode 100644 index 000000000000..6312513ecef5 --- /dev/null +++ b/www/qt5-webengine/Makefile @@ -0,0 +1,105 @@ +# $FreeBSD$ + +# QtWebEngine itself is a very thin layer of Qt code on top of a large part of +# Chromium (everything up to the content/ layer). As such, most of the work in +# this port revolves around taming Chromium and getting it to build on FreeBSD. +# While it does build at the moment, there are several items that should be +# investigated or improved: +# - We are using several stub files, especially in Chromium's base/ and net/ +# layers. We should look at implementing the missing bits instead. +# - We are currently not using any sandboxing mechanism. +# - We are disabling support for features such as WebRTC and printing. We need +# to see what it would take to properly support them. +# - We need to see if more "use_system_" flags can be passed. +# - The process of porting QtWebEngine needs to be documented so we can move to +# newer releases more easily. + +PORTNAME= webengine +DISTVERSION= ${QT5_VERSION} +CATEGORIES= www +PKGNAMEPREFIX= qt5- + +MAINTAINER= kde@FreeBSD.org +COMMENT= Qt 5 library to render web content + +BUILD_DEPENDS= bison:devel/bison \ + ninja:devel/ninja \ + python:lang/python \ + yasm:devel/yasm \ + ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat +LIB_DEPENDS= libdbus-1.so:devel/dbus \ + libevent.so:devel/libevent \ + libfontconfig.so:x11-fonts/fontconfig \ + libfreetype.so:print/freetype2 \ + libjsoncpp.so:devel/jsoncpp \ + libnspr4.so:devel/nspr \ + libnss3.so:security/nss \ + libopus.so:audio/opus \ + libpci.so:devel/libpci \ + libpng.so:graphics/png \ + libprotobuf.so:devel/protobuf \ + libsnappy.so:archivers/snappy \ + libsrtp.so:net/libsrtp \ + libwebp.so:graphics/webp + +OPTIONS_SINGLE= AUDIO +OPTIONS_SINGLE_AUDIO= ALSA PULSEAUDIO +OPTIONS_DEFAULT= ALSA + +AUDIO_DESC= Audio backend + +ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib +ALSA_QMAKE_ON= QT_CONFIG+=alsa +PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio +PULSEAUDIO_QMAKE_ON= QT_CONFIG+=pulseaudio + +# We pass `norecursive' to USES=qmake because src/plugins/plugins.pro checks +# whether webenginewidgets is available, which fails when qmake processes all +# .pro files at once. +USES= gperf jpeg python:2,build pkgconfig \ + qmake:norecursive,outsource shebangfix +USE_GNOME= glib20 libxml2 libxslt +USE_QT5= core designer gui location network qml quick webchannel \ + widgets buildtools_build qmake_build +USE_XORG= scrnsaverproto x11 xcomposite xcursor xext xi xproto \ + xrandr xrender xscrnsaver xtst + +USE_LDCONFIG= ${QT_LIBDIR} + +QT_DIST= ${PORTNAME} + +QMAKE_ARGS= WEBENGINE_CONFIG+=use_nss \ + WEBENGINE_CONFIG+=use_proprietary_codecs \ + WEBENGINE_CONFIG+=use_system_libevent + +# We could just set it to an empty string as well. "all" does not account for +# dependencies correctly in the generated Makefiles, use the right target here. +ALL_TARGET= first + +# The build system reads the environment variable $NINJA_PATH to decide whether +# to boostrap ninja or not (and also to invoke it afterwards). CC and CXX are +# read by some Chromium code to determine which compiler to invoke when running +# some configuration tests. +# Since we use USES=qmake:norecursive, we also need to pass some variables to +# MAKE_ENV because part of the configuration process happens during the build. +CONFIGURE_ENV+= NINJAFLAGS="-j${MAKE_JOBS_NUMBER}" \ + NINJA_PATH="${LOCALBASE}/bin/ninja" +MAKE_ENV+= CC="${CC}" CXX="${CXX}" ${CONFIGURE_ENV} + +post-extract: +# Install FreeBSD's freebsd.pri file. + ${CP} ${FILESDIR}/freebsd.pri ${WRKSRC}/src/core/config/freebsd.pri +# Unbundle libusb. + ${RM} -r ${WRKSRC}/src/3rdparty/chromium/third_party/libusb/src + ${CP} ${WRKSRC}/src/3rdparty/chromium/build/linux/unbundle/libusb.gyp \ + ${WRKSRC}/src/3rdparty/chromium/third_party/libusb/libusb.gyp +# Unbundle libxml. + ${CP} ${WRKSRC}/src/3rdparty/chromium/build/linux/unbundle/libxml.gyp \ + ${WRKSRC}/src/3rdparty/chromium/third_party/libxml/libxml.gyp + +post-patch: +# Too many occurrences to keep in a patch in files/. + ${REINPLACE_CMD} -e 's,OS == "linux",(OS == "linux" or OS == "freebsd"),g' \ + ${WRKSRC}/src/3rdparty/chromium/third_party/ffmpeg/ffmpeg_generated.gypi + +.include diff --git a/www/qt5-webengine/distinfo b/www/qt5-webengine/distinfo new file mode 100644 index 000000000000..c7fdb5701481 --- /dev/null +++ b/www/qt5-webengine/distinfo @@ -0,0 +1 @@ +TIMESTAMP = 1491910958 diff --git a/www/qt5-webengine/files/freebsd.pri b/www/qt5-webengine/files/freebsd.pri new file mode 100644 index 000000000000..802c267de92f --- /dev/null +++ b/www/qt5-webengine/files/freebsd.pri @@ -0,0 +1,16 @@ +include(desktop_linux.pri) + +GYP_CONFIG += disable_nacl=1 \ + enable_basic_printing=0 \ + enable_printing=0 \ + enable_webrtc=0 \ + enable_hidpi=1 \ + use_dbus=1 \ + use_pulseaudio=0 + +# Once the port works better, we can think about readding the diverse `use_system_` +# for bundled libraries. +# For now, only add very few system libraries. +GYP_CONFIG += use_system_yasm=1 \ + use_system_libusb=1 \ + use_system_libcxx=1 diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base.gyp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base.gyp new file mode 100644 index 000000000000..3efd008c6010 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base.gyp @@ -0,0 +1,13 @@ +Disable USE_SYMBOLIZE, it assumes Linux is being used and does things such as +reading from /proc. +--- src/3rdparty/chromium/base/base.gyp.orig 2017-04-19 16:31:45 UTC ++++ src/3rdparty/chromium/base/base.gyp +@@ -46,7 +46,7 @@ + 'xdg_mime', + ], + 'defines': [ +- 'USE_SYMBOLIZE', ++ # 'USE_SYMBOLIZE', + ], + }, { # desktop_linux == 0 and chromeos == 0 + 'sources/': [ diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base.gypi b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base.gypi new file mode 100644 index 000000000000..5e115d1026cf --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base.gypi @@ -0,0 +1,17 @@ +--- src/3rdparty/chromium/base/base.gypi.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/base/base.gypi +@@ -1006,9 +1006,14 @@ + 'process/memory_stubs.cc', + ], + 'sources/': [ ++ ['exclude', '^debug/proc_maps_linux\\.cc$'], ++ ['exclude', '^files/file_path_watcher_fsevents\\.cc$'], + ['exclude', '^files/file_path_watcher_linux\\.cc$'], + ['exclude', '^files/file_path_watcher_stub\\.cc$'], + ['exclude', '^files/file_util_linux\\.cc$'], ++ ['exclude', '^process/memory_linux\\.cc$'], ++ ['exclude', '^process/process_iterator_linux\\.cc$'], ++ ['exclude', '^process/process_metrics_linux\\.cc$'], + ['exclude', '^process/process_linux\\.cc$'], + ['exclude', '^sys_info_linux\\.cc$'], + ], diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher__kqueue.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher__kqueue.cc new file mode 100644 index 000000000000..901306417a16 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher__kqueue.cc @@ -0,0 +1,13 @@ +--- src/3rdparty/chromium/base/files/file_path_watcher_kqueue.cc.orig 2017-04-19 09:33:16 UTC ++++ src/3rdparty/chromium/base/files/file_path_watcher_kqueue.cc +@@ -388,4 +388,10 @@ void FilePathWatcherKQueue::CancelOnMess + } + } + ++// In the upstream version, this method is implemented in ++// file_path_watcher_mac.cc, which we obviously do not use. ++FilePathWatcher::FilePathWatcher() { ++ impl_ = new FilePathWatcherKQueue(); ++} ++ + } // namespace base diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher__kqueue.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher__kqueue.h new file mode 100644 index 000000000000..18e94e0f707e --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher__kqueue.h @@ -0,0 +1,14 @@ +--- src/3rdparty/chromium/base/files/file_path_watcher_kqueue.h.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/base/files/file_path_watcher_kqueue.h +@@ -5,6 +5,11 @@ + #ifndef BASE_FILES_FILE_PATH_WATCHER_KQUEUE_H_ + #define BASE_FILES_FILE_PATH_WATCHER_KQUEUE_H_ + ++#ifdef __FreeBSD__ ++#include ++#include ++#endif ++ + #include + #include + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_posix_unix__domain__socket__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_posix_unix__domain__socket__linux.cc new file mode 100644 index 000000000000..c2941174f235 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_posix_unix__domain__socket__linux.cc @@ -0,0 +1,44 @@ +--- src/3rdparty/chromium/base/posix/unix_domain_socket_linux.cc.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/base/posix/unix_domain_socket_linux.cc +@@ -21,6 +21,15 @@ + #include + #endif + ++#if defined(__FreeBSD__) ++// Port over Linux ucred structure ++struct ucred { ++ pid_t pid; // process ID of the sending process ++ uid_t uid; // user ID of the sending process ++ gid_t gid; // group ID of the sending process ++}; ++#endif ++ + namespace base { + + const size_t UnixDomainSocket::kMaxFileDescriptors = 16; +@@ -41,7 +50,13 @@ static bool CreateSocketPair(ScopedFD* one, ScopedFD* + // static + bool UnixDomainSocket::EnableReceiveProcessId(int fd) { + const int enable = 1; ++#if defined(__FreeBSD__) ++ // XXX(rene) do this? : ++ // taken from dbus, Academic Free License 2.1 / GPL 2+ ++ return 0; // fake OK ++#else + return setsockopt(fd, SOL_SOCKET, SO_PASSCRED, &enable, sizeof(enable)) == 0; ++#endif + } + #endif // !defined(OS_NACL_NONSFI) + +@@ -147,7 +162,11 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, + // The PNaCl toolchain for Non-SFI binary build does not support + // SCM_CREDENTIALS. + if (cmsg->cmsg_level == SOL_SOCKET && ++#if defined(__FreeBSD__) ++ 1) { ++#else + cmsg->cmsg_type == SCM_CREDENTIALS) { ++#endif + DCHECK_EQ(payload_len, sizeof(struct ucred)); + DCHECK_EQ(pid, -1); + pid = reinterpret_cast(CMSG_DATA(cmsg))->pid; diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_memory__stubs.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_memory__stubs.cc new file mode 100644 index 000000000000..fb11d976e83c --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_memory__stubs.cc @@ -0,0 +1,15 @@ +Use the definition in memory.cc instead. +--- src/3rdparty/chromium/base/process/memory_stubs.cc.orig 2017-04-19 16:40:17 UTC ++++ src/3rdparty/chromium/base/process/memory_stubs.cc +@@ -32,9 +32,11 @@ bool UncheckedMalloc(size_t size, void** + return *result != nullptr; + } + ++#if !defined(OS_BSD) + bool UncheckedCalloc(size_t num_items, size_t size, void** result) { + *result = calloc(num_items, size); + return *result != nullptr; + } ++#endif + + } // namespace base diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__posix.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__posix.cc new file mode 100644 index 000000000000..792cca0e96cd --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__posix.cc @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/base/process/process_posix.cc.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/base/process/process_posix.cc +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + + #include "base/files/scoped_file.h" + #include "base/logging.h" diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__linux.cc new file mode 100644 index 000000000000..0ed91c4fa529 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_threading_platform__thread__linux.cc @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/base/threading/platform_thread_linux.cc.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/base/threading/platform_thread_linux.cc +@@ -17,7 +17,9 @@ + + #if !defined(OS_NACL) + #include ++#if !defined(OS_BSD) + #include ++#endif + #include + #include + #endif +@@ -81,7 +83,7 @@ void PlatformThread::SetName(const std::string& name) + ThreadIdNameManager::GetInstance()->SetName(CurrentId(), name); + tracked_objects::ThreadData::InitializeThreadContext(name); + +-#if !defined(OS_NACL) ++#if !defined(OS_NACL) && !defined(OS_BSD) + // On linux we can get the thread names to show up in the debugger by setting + // the process name for the LWP. We don't want to do this for the main + // thread because that would rename the process, causing tools like killall diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_trace__event_process__memory__dump.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_trace__event_process__memory__dump.cc new file mode 100644 index 000000000000..35d5104af99a --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_trace__event_process__memory__dump.cc @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/base/trace_event/process_memory_dump.cc.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/base/trace_event/process_memory_dump.cc +@@ -52,7 +52,7 @@ size_t ProcessMemoryDump::CountResidentB + const size_t page_count = (chunk_size + page_size - 1) / page_size; + size_t resident_page_count = 0; + +-#if defined(OS_MACOSX) || defined(OS_IOS) ++#if defined(OS_MACOSX) || defined(OS_IOS) || defined(OS_BSD) + std::vector vec(page_count + 1); + // mincore in MAC does not fail with EAGAIN. + result = mincore(chunk_start, chunk_size, vec.data()); +@@ -61,7 +61,7 @@ size_t ProcessMemoryDump::CountResidentB + + for (size_t i = 0; i < page_count; i++) + resident_page_count += vec[i] & MINCORE_INCORE ? 1 : 0; +-#else // defined(OS_MACOSX) || defined(OS_IOS) ++#else // defined(OS_MACOSX) || defined(OS_IOS) || defined(OS_BSD) + std::vector vec(page_count + 1); + int error_counter = 0; + // HANDLE_EINTR tries for 100 times. So following the same pattern. +@@ -73,7 +73,7 @@ size_t ProcessMemoryDump::CountResidentB + + for (size_t i = 0; i < page_count; i++) + resident_page_count += vec[i]; +-#endif // defined(OS_MACOSX) || defined(OS_IOS) ++#endif // defined(OS_MACOSX) || defined(OS_IOS) || defined(OS_BSD) + + total_resident_size += resident_page_count * page_size; + offset += kMaxChunkSize; diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_tracked__objects.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_tracked__objects.cc new file mode 100644 index 000000000000..39d258eae823 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_tracked__objects.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/base/tracked_objects.cc.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/base/tracked_objects.cc +@@ -431,7 +431,7 @@ void ThreadData::OnThreadTerminationCleanup() { + } + // We must NOT do any allocations during this callback. + // Using the simple linked lists avoids all allocations. +- DCHECK_EQ(this->next_retired_worker_, reinterpret_cast(NULL)); ++ DCHECK_EQ(this->next_retired_worker_, reinterpret_cast(0)); + this->next_retired_worker_ = first_retired_worker_; + first_retired_worker_ = this; + } diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_common.gypi b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_common.gypi new file mode 100644 index 000000000000..7c34edb4b2a0 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_common.gypi @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/build/common.gypi.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/build/common.gypi +@@ -4781,6 +4781,13 @@ + 'ldflags': [ + '-Wl,--no-keep-memory', + ], ++ 'ldflags!': [ ++ '-ldl', ++ '-pie', ++ ], ++ 'libraries!': [ ++ '-ldl', ++ ], + }, + }], + # Android-specific options; note that most are set above with Linux. diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_linux_unbundle_libusb.gyp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_linux_unbundle_libusb.gyp new file mode 100644 index 000000000000..bcf7ec48ea4b --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_linux_unbundle_libusb.gyp @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/build/linux/unbundle/libusb.gyp.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/build/linux/unbundle/libusb.gyp +@@ -18,14 +18,14 @@ + ], + 'direct_dependent_settings': { + 'cflags': [ +- 'ForkRequest( + cmd_line->argv(), std::move(files_to_register), process_type); +@@ -296,7 +296,7 @@ void TerminateOnLauncherThread(bool zygote, base::Proc + process.Terminate(RESULT_CODE_NORMAL_EXIT, false); + // On POSIX, we must additionally reap the child. + #if defined(OS_POSIX) +-#if !defined(OS_MACOSX) ++#if !defined(OS_MACOSX) && !defined(OS_BSD) + if (zygote) { + // If the renderer was created via a zygote, we have to proxy the reaping + // through the zygote process. +@@ -398,7 +398,7 @@ void ChildProcessLauncher::Launch( + + void ChildProcessLauncher::UpdateTerminationStatus(bool known_dead) { + DCHECK(CalledOnValidThread()); +-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) ++#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) + if (zygote_) { + termination_status_ = ZygoteHostImpl::GetInstance()-> + GetTerminationStatus(process_.Handle(), known_dead, &exit_code_); +@@ -469,7 +469,7 @@ void ChildProcessLauncher::Notify( + starting_ = false; + process_ = std::move(process); + +-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) ++#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) + zygote_ = zygote; + #endif + if (process_.IsValid()) { diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_download_file__metadata__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_download_file__metadata__linux.cc new file mode 100644 index 000000000000..c74bda54f05f --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_download_file__metadata__linux.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/content/browser/download/file_metadata_linux.cc.orig 2017-04-20 13:00:41 UTC ++++ src/3rdparty/chromium/content/browser/download/file_metadata_linux.cc +@@ -6,7 +6,7 @@ + + #include + #include +-#include ++#include + + #include "base/files/file_path.h" + #include "base/files/file_util.h" +@@ -21,7 +21,7 @@ const char kReferrerURLAttrName[] = "use + static void SetExtendedFileAttribute(const char* path, const char* name, + const char* value, size_t value_size, + int flags) { +- int result = setxattr(path, name, value, value_size, flags); ++ int result = extattr_set_file(path, EXTATTR_NAMESPACE_USER, name, value, value_size); + if (result) { + DPLOG(ERROR) + << "Could not set extended attribute " << name << " on file " << path; diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_frame__host_render__widget__host__view__guest.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_frame__host_render__widget__host__view__guest.cc new file mode 100644 index 000000000000..5dca5f09aafc --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_frame__host_render__widget__host__view__guest.cc @@ -0,0 +1,16 @@ +--- src/3rdparty/chromium/content/browser/frame_host/render_widget_host_view_guest.cc.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/content/browser/frame_host/render_widget_host_view_guest.cc +@@ -338,11 +338,11 @@ gfx::NativeView RenderWidgetHostViewGuest::GetNativeVi + + gfx::NativeViewId RenderWidgetHostViewGuest::GetNativeViewId() const { + if (!guest_) +- return static_cast(NULL); ++ return reinterpret_cast(NULL); + + RenderWidgetHostView* rwhv = guest_->GetOwnerRenderWidgetHostView(); + if (!rwhv) +- return static_cast(NULL); ++ return reinterpret_cast(NULL); + return rwhv->GetNativeViewId(); + } + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_geolocation_location__arbitrator__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_geolocation_location__arbitrator__impl.cc new file mode 100644 index 000000000000..90c140e0224c --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_geolocation_location__arbitrator__impl.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/content/browser/geolocation/location_arbitrator_impl.cc.orig 2017-04-19 16:57:24 UTC ++++ src/3rdparty/chromium/content/browser/geolocation/location_arbitrator_impl.cc +@@ -174,7 +174,7 @@ LocationProvider* LocationArbitratorImpl + } + + LocationProvider* LocationArbitratorImpl::NewSystemLocationProvider() { +-#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) ++#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) + return NULL; + #else + return content::NewSystemLocationProvider(); diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_content__browser.gypi b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_content__browser.gypi new file mode 100644 index 000000000000..ddf51f77a4a9 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_content__browser.gypi @@ -0,0 +1,33 @@ +--- src/3rdparty/chromium/content/content_browser.gypi.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/content/content_browser.gypi +@@ -2140,6 +2140,9 @@ + ['os_bsd==1', { + 'sources/': [ + ['exclude', '^browser/gamepad/gamepad_platform_data_fetcher_linux\\.cc$'], ++ ['exclude', '^browser/zygote_host/zygote_host_impl_linux\\.cc$'], ++ ['exclude', '^zygote/zygote_linux\\.cc$'], ++ ['exclude', '^zygote/zygote_main_linux\\.cc$'], + ], + }], + ['use_aura==1', { +@@ -2191,14 +2194,16 @@ + 'browser/geolocation/empty_wifi_data_provider.cc', + ], + }], +- ['OS == "linux" and use_dbus==1', { +- 'sources!': [ +- 'browser/geolocation/empty_wifi_data_provider.cc', +- ], ++ ['use_dbus==1', { + 'dependencies': [ + '../build/linux/system.gyp:dbus', + '../dbus/dbus.gyp:dbus', + ], ++ }], ++ ['OS == "linux" and use_dbus==1', { ++ 'sources!': [ ++ 'browser/geolocation/empty_wifi_data_provider.cc', ++ ], + }, { # OS != "linux" or use_dbus==0 + 'sources!': [ + 'browser/geolocation/wifi_data_provider_linux.cc', diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_content__common.gypi b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_content__common.gypi new file mode 100644 index 000000000000..0e73627773b9 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_content__common.gypi @@ -0,0 +1,32 @@ +--- src/3rdparty/chromium/content/content_common.gypi.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/content/content_common.gypi +@@ -12,6 +12,7 @@ + '../skia/skia.gyp:skia', + '../third_party/WebKit/public/blink_headers.gyp:blink_headers', + '../third_party/icu/icu.gyp:icuuc', ++ '../third_party/mesa/mesa.gyp:mesa_headers', + '../ui/accessibility/accessibility.gyp:accessibility', + '../ui/accessibility/accessibility.gyp:ax_gen', + '../ui/base/ime/ui_base_ime.gyp:ui_base_ime', +@@ -756,6 +757,21 @@ + 'content.gyp:common_aidl', + ], + }], ++ ['os_bsd==1', { ++ 'sources!': [ ++ 'common/sandbox_linux/bpf_cros_arm_gpu_policy_linux.cc', ++ 'common/sandbox_linux/bpf_gpu_policy_linux.cc', ++ 'common/sandbox_linux/bpf_ppapi_policy_linux.cc', ++ 'common/sandbox_linux/bpf_renderer_policy_linux.cc', ++ 'common/sandbox_linux/bpf_utility_policy_linux.cc', ++ 'common/sandbox_linux/sandbox_bpf_base_policy_linux.cc', ++ 'common/sandbox_linux/sandbox_debug_handling_linux.cc', ++ 'common/sandbox_linux/sandbox_init_linux.cc', ++ 'common/sandbox_linux/sandbox_linux.cc', ++ 'common/sandbox_linux/sandbox_seccomp_bpf_linux.cc', ++ 'common/set_process_title_linux.cc', ++ ], ++ }], + ['use_pango == 1', { + 'dependencies': [ + '../build/linux/system.gyp:pangocairo', diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__child__thread.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__child__thread.cc new file mode 100644 index 000000000000..d3c8d06a54a2 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__child__thread.cc @@ -0,0 +1,18 @@ +--- src/3rdparty/chromium/content/gpu/gpu_child_thread.cc.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/content/gpu/gpu_child_thread.cc +@@ -306,6 +306,7 @@ void GpuChildThread::StopWatchdog() { + } + + void GpuChildThread::OnCollectGraphicsInfo() { ++#if !defined(OS_FREEBSD) + #if defined(OS_WIN) + // GPU full info collection should only happen on un-sandboxed GPU process + // or single process/in-process gpu mode on Windows. +@@ -348,6 +349,7 @@ void GpuChildThread::OnCollectGraphicsInfo() { + base::MessageLoop::current()->QuitWhenIdle(); + } + #endif // OS_WIN ++#endif + } + + void GpuChildThread::OnGetVideoMemoryUsageStats() { diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__main.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__main.cc new file mode 100644 index 000000000000..aa0a762b1ab7 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__main.cc @@ -0,0 +1,45 @@ +--- src/3rdparty/chromium/content/gpu/gpu_main.cc.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/content/gpu/gpu_main.cc +@@ -99,7 +99,7 @@ void GetGpuInfoFromCommandLine(gpu::GPUInfo& gpu_info, + const base::CommandLine& command_line); + bool WarmUpSandbox(const base::CommandLine& command_line); + +-#if !defined(OS_MACOSX) ++#if !defined(OS_MACOSX) && !defined(OS_FREEBSD) + bool CollectGraphicsInfo(gpu::GPUInfo& gpu_info); + #endif + +@@ -191,13 +191,13 @@ int GpuMain(const MainFunctionParams& parameters) { + #else + base::MessageLoop main_message_loop(base::MessageLoop::TYPE_UI); + #endif +-#elif defined(OS_LINUX) && defined(USE_X11) ++#elif (defined(OS_LINUX)||defined(OS_BSD)) && defined(USE_X11) + // We need a UI loop so that we can grab the Expose events. See GLSurfaceGLX + // and https://crbug.com/326995. + base::MessageLoop main_message_loop(base::MessageLoop::TYPE_UI); + scoped_ptr event_source = + ui::PlatformEventSource::CreateDefault(); +-#elif defined(OS_LINUX) ++#elif defined(OS_LINUX)||defined(OS_BSD) + base::MessageLoop main_message_loop(base::MessageLoop::TYPE_DEFAULT); + #elif defined(OS_MACOSX) + // This is necessary for CoreAnimation layers hosted in the GPU process to be +@@ -303,7 +303,7 @@ int GpuMain(const MainFunctionParams& parameters) { + // and we already registered them through SetGpuInfo() above. + base::TimeTicks before_collect_context_graphics_info = + base::TimeTicks::Now(); +-#if !defined(OS_MACOSX) ++#if !defined(OS_MACOSX) && !defined(OS_FREEBSD) + if (!CollectGraphicsInfo(gpu_info)) + dead_on_arrival = true; + +@@ -457,7 +457,7 @@ bool WarmUpSandbox(const base::CommandLine& command_li + return true; + } + +-#if !defined(OS_MACOSX) ++#if !defined(OS_MACOSX) && !defined(OS_FREEBSD) + bool CollectGraphicsInfo(gpu::GPUInfo& gpu_info) { + TRACE_EVENT0("gpu,startup", "Collect Graphics Info"); + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_devtools_v8__sampling__profiler.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_devtools_v8__sampling__profiler.cc new file mode 100644 index 000000000000..02baa7992bb5 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_devtools_v8__sampling__profiler.cc @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/content/renderer/devtools/v8_sampling_profiler.cc.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/content/renderer/devtools/v8_sampling_profiler.cc +@@ -6,6 +6,7 @@ + + #include + #include ++#include + + #include "base/format_macros.h" + #include "base/location.h" +@@ -544,6 +546,10 @@ void V8SamplingThread::HandleProfilerSignal(int signal + state.pc = reinterpret_cast(mcontext->__ss.REG_64_32(__rip, __eip)); + state.sp = reinterpret_cast(mcontext->__ss.REG_64_32(__rsp, __esp)); + state.fp = reinterpret_cast(mcontext->__ss.REG_64_32(__rbp, __ebp)); ++#elif defined(OS_FREEBSD) ++ state.pc = reinterpret_cast(mcontext.REG_64_32(mc_rip, mc_eip)); ++ state.sp = reinterpret_cast(mcontext.REG_64_32(mc_rsp, mc_esp)); ++ state.fp = reinterpret_cast(mcontext.REG_64_32(mc_rbp, mc_ebp)); + #else + state.pc = + reinterpret_cast(mcontext.gregs[REG_64_32(REG_RIP, REG_EIP)]); diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__main__platform__delegate__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__main__platform__delegate__linux.cc new file mode 100644 index 000000000000..eff3487d3985 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_renderer__main__platform__delegate__linux.cc @@ -0,0 +1,18 @@ +--- src/3rdparty/chromium/content/renderer/renderer_main_platform_delegate_linux.cc.orig 2017-04-20 13:24:44 UTC ++++ src/3rdparty/chromium/content/renderer/renderer_main_platform_delegate_linux.cc +@@ -29,6 +29,7 @@ void RendererMainPlatformDelegate::Platf + } + + bool RendererMainPlatformDelegate::EnableSandbox() { ++#if defined(OS_LINUX) + // The setuid sandbox is started in the zygote process: zygote_main_linux.cc + // http://code.google.com/p/chromium/wiki/LinuxSUIDSandbox + // +@@ -60,6 +61,7 @@ bool RendererMainPlatformDelegate::Enabl + } + #endif // __x86_64__ + ++#endif // defined(OS_LINUX) + return true; + } + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_crypto_nss__util.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_crypto_nss__util.cc new file mode 100644 index 000000000000..5474230b08aa --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_crypto_nss__util.cc @@ -0,0 +1,24 @@ +--- src/3rdparty/chromium/crypto/nss_util.cc.orig 2017-04-23 10:32:17 UTC ++++ src/3rdparty/chromium/crypto/nss_util.cc +@@ -15,7 +15,7 @@ + + #include "crypto/nss_util_internal.h" + +-#if defined(OS_OPENBSD) ++#if defined(OS_BSD) + #include + #include + #endif +@@ -158,10 +158,10 @@ void UseLocalCacheOfNSSDatabaseIfNFS(con + base::FileSystemType fs_type = base::FILE_SYSTEM_UNKNOWN; + if (base::GetFileSystemType(database_dir, &fs_type)) + db_on_nfs = (fs_type == base::FILE_SYSTEM_NFS); +-#elif defined(OS_OPENBSD) ++#elif defined(OS_BSD) + struct statfs buf; + if (statfs(database_dir.value().c_str(), &buf) == 0) +- db_on_nfs = (strcmp(buf.f_fstypename, MOUNT_NFS) == 0); ++ db_on_nfs = (strcmp(buf.f_fstypename, "nfs") == 0); + #else + NOTIMPLEMENTED(); + #endif diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__context.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__context.cc new file mode 100644 index 000000000000..911709722edb --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__context.cc @@ -0,0 +1,22 @@ +--- src/3rdparty/chromium/device/usb/usb_context.cc.orig 2017-04-11 14:15:58 UTC ++++ src/3rdparty/chromium/device/usb/usb_context.cc +@@ -9,8 +9,7 @@ + #include "base/macros.h" + #include "base/threading/simple_thread.h" + #include "device/usb/usb_error.h" +-#include "third_party/libusb/src/libusb/interrupt.h" +-#include "third_party/libusb/src/libusb/libusb.h" ++#include "libusb.h" + + namespace device { + +@@ -58,7 +57,9 @@ void UsbContext::UsbEventHandler::Run() { + + void UsbContext::UsbEventHandler::Stop() { + base::subtle::Release_Store(&running_, 0); ++#if !defined(__FreeBSD__) + libusb_interrupt_handle_event(context_); ++#endif + } + + UsbContext::UsbContext(PlatformUsbContext context) : context_(context) { diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.cc new file mode 100644 index 000000000000..daabc883fbf9 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.cc @@ -0,0 +1,48 @@ +The hotplug API is not available on FreeBSD <= 10.3. + +The API was added in base r302080, so it is part of FreeBSD 11.0+. It was +MFC'ed to stable/10 in r302275, which is between __FreeBSD_version's 1003505 +(r302228) and 1003506 (r304611). +--- src/3rdparty/chromium/device/usb/usb_service_impl.cc.orig 2017-04-20 16:14:07 UTC ++++ src/3rdparty/chromium/device/usb/usb_service_impl.cc +@@ -482,6 +482,7 @@ UsbServiceImpl::UsbServiceImpl( + } + context_ = new UsbContext(platform_context); + ++#if defined(__FreeBSD_version) && __FreeBSD_version >= 1003506 + rv = libusb_hotplug_register_callback( + context_->context(), + static_cast(LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED | +@@ -492,6 +493,7 @@ UsbServiceImpl::UsbServiceImpl( + if (rv == LIBUSB_SUCCESS) { + hotplug_enabled_ = true; + } ++#endif + + RefreshDevices(); + #if defined(OS_WIN) +@@ -504,7 +506,9 @@ UsbServiceImpl::UsbServiceImpl( + + UsbServiceImpl::~UsbServiceImpl() { + if (hotplug_enabled_) { ++#if defined(__FreeBSD_version) && __FreeBSD_version >= 1003506 + libusb_hotplug_deregister_callback(context_->context(), hotplug_handle_); ++#endif + } + for (const auto& map_entry : devices_) { + map_entry.second->OnDisconnect(); +@@ -744,6 +748,7 @@ void UsbServiceImpl::RemoveDevice(scoped + } + + // static ++#if defined(__FreeBSD_version) && __FreeBSD_version >= 1003506 + int LIBUSB_CALL UsbServiceImpl::HotplugCallback(libusb_context* context, + PlatformUsbDevice device, + libusb_hotplug_event event, +@@ -799,5 +804,6 @@ void UsbServiceImpl::OnPlatformDeviceRem + } + libusb_unref_device(platform_device); + } ++#endif // defined(__FreeBSD_version) && __FreeBSD_version >= 1003506 + + } // namespace device diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.h new file mode 100644 index 000000000000..68ac29e32740 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.h @@ -0,0 +1,33 @@ +The hotplug API is not available on FreeBSD <= 10.3. + +The API was added in base r302080, so it is part of FreeBSD 11.0+. It was +MFC'ed to stable/10 in r302275, which is between __FreeBSD_version's 1003505 +(r302228) and 1003506 (r304611). +--- src/3rdparty/chromium/device/usb/usb_service_impl.h.orig 2017-04-20 16:14:03 UTC ++++ src/3rdparty/chromium/device/usb/usb_service_impl.h +@@ -72,6 +72,7 @@ class UsbServiceImpl : + void RemoveDevice(scoped_refptr device); + + // Handle hotplug events from libusb. ++#if defined(__FreeBSD_version) && __FreeBSD_version >= 1003506 + static int LIBUSB_CALL HotplugCallback(libusb_context* context, + PlatformUsbDevice device, + libusb_hotplug_event event, +@@ -79,6 +80,7 @@ class UsbServiceImpl : + // These functions release a reference to the provided platform device. + void OnPlatformDeviceAdded(PlatformUsbDevice platform_device); + void OnPlatformDeviceRemoved(PlatformUsbDevice platform_device); ++#endif + + scoped_refptr context_; + scoped_refptr task_runner_; +@@ -88,7 +90,9 @@ class UsbServiceImpl : + // connected instead of only when a full enumeration is requested. + // TODO(reillyg): Support this on all platforms. crbug.com/411715 + bool hotplug_enabled_ = false; ++#if defined(__FreeBSD_version) && __FreeBSD_version >= 1003506 + libusb_hotplug_callback_handle hotplug_handle_; ++#endif + + // Enumeration callbacks are queued until an enumeration completes. + bool enumeration_ready_ = false; diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_gpu__config.gypi b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_gpu__config.gypi new file mode 100644 index 000000000000..2a68e1bed6a9 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_gpu__config.gypi @@ -0,0 +1,17 @@ +--- src/3rdparty/chromium/gpu/gpu_config.gypi.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/gpu/gpu_config.gypi +@@ -66,12 +66,12 @@ + '../third_party/amd/amd_videocard_info_win.cc', + ], + }], +- ['OS=="linux" and use_libpci==1 and (use_x11==1 or use_ozone==1)', { ++ ['(OS=="linux" or os_bsd==1) and use_libpci==1 and (use_x11==1 or use_ozone==1)', { + 'dependencies': [ + '../build/linux/system.gyp:libpci', + ], + }], +- ['OS=="linux" and use_x11==1', { ++ ['(OS=="linux" or os_bsd==1) and use_x11==1', { + 'dependencies': [ + '../build/linux/system.gyp:x11', + '../build/linux/system.gyp:xext', diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_file__video__capture__device__factory.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_file__video__capture__device__factory.cc new file mode 100644 index 000000000000..5e274b1774c6 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_file__video__capture__device__factory.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/media/capture/video/file_video_capture_device_factory.cc.orig 2017-04-23 10:37:42 UTC ++++ src/3rdparty/chromium/media/capture/video/file_video_capture_device_factory.cc +@@ -50,7 +50,7 @@ void FileVideoCaptureDeviceFactory::GetD + device_names->push_back(VideoCaptureDevice::Name( + command_line_file_path.value(), kFileVideoCaptureDeviceName, + VideoCaptureDevice::Name::AVFOUNDATION)); +-#elif defined(OS_LINUX) ++#elif defined(OS_LINUX) || defined(OS_BSD) + device_names->push_back(VideoCaptureDevice::Name( + command_line_file_path.value(), kFileVideoCaptureDeviceName, + VideoCaptureDevice::Name::V4L2_SINGLE_PLANE)); diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.cc new file mode 100644 index 000000000000..e3a0981988dd --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_v4l2__capture__delegate.cc @@ -0,0 +1,21 @@ +--- src/3rdparty/chromium/media/capture/video/linux/v4l2_capture_delegate.cc.orig 2017-04-19 19:13:43 UTC ++++ src/3rdparty/chromium/media/capture/video/linux/v4l2_capture_delegate.cc +@@ -20,7 +20,7 @@ + #include "media/capture/video/linux/v4l2_capture_delegate_single_plane.h" + #include "media/capture/video/linux/video_capture_device_linux.h" + +-#if !defined(OS_OPENBSD) ++#if !defined(OS_BSD) + #include + #endif + +@@ -277,9 +277,7 @@ void V4L2CaptureDelegate::AllocateAndSta + // operation (|errno| == EINVAL in this case) or plain failure. + if ((power_line_frequency_ == V4L2_CID_POWER_LINE_FREQUENCY_50HZ) + || (power_line_frequency_ == V4L2_CID_POWER_LINE_FREQUENCY_60HZ) +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + || (power_line_frequency_ == V4L2_CID_POWER_LINE_FREQUENCY_AUTO) +-#endif + ) { + struct v4l2_control control = {}; + control.id = V4L2_CID_POWER_LINE_FREQUENCY; diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__linux.cc new file mode 100644 index 000000000000..6e095e988b29 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__linux.cc @@ -0,0 +1,25 @@ +--- src/3rdparty/chromium/media/capture/video/linux/video_capture_device_linux.cc.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/media/capture/video/linux/video_capture_device_linux.cc +@@ -17,7 +17,9 @@ + #include + #else + #include ++#if !defined(OS_BSD) + #include ++#endif // defined(OS_BSD) + #endif + + namespace media { +@@ -144,12 +146,8 @@ int VideoCaptureDeviceLinux::TranslatePo + case media::PowerLineFrequency::FREQUENCY_60HZ: + return V4L2_CID_POWER_LINE_FREQUENCY_60HZ; + default: +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + // If we have no idea of the frequency, at least try and set it to AUTO. + return V4L2_CID_POWER_LINE_FREQUENCY_AUTO; +-#else +- return V4L2_CID_POWER_LINE_FREQUENCY_60HZ; +-#endif + } + } + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device.cc new file mode 100644 index 000000000000..04cba783ab49 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/media/capture/video/video_capture_device.cc.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/media/capture/video/video_capture_device.cc +@@ -35,7 +35,7 @@ VideoCaptureDevice::Name::Name(const std + : device_name_(name), unique_id_(id) { + } + +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_BSD) + VideoCaptureDevice::Name::Name(const std::string& name, + const std::string& id, + const CaptureApiType api_type) +@@ -82,7 +82,7 @@ VideoCaptureDevice::Name::Name(const std + VideoCaptureDevice::Name::~Name() { + } + +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_BSD) + const char* VideoCaptureDevice::Name::GetCaptureApiTypeString() const { + switch (capture_api_type()) { + case V4L2_SINGLE_PLANE: diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device.h new file mode 100644 index 000000000000..b79b9ca850c4 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device.h @@ -0,0 +1,38 @@ +--- src/3rdparty/chromium/media/capture/video/video_capture_device.h.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/media/capture/video/video_capture_device.h +@@ -51,7 +51,7 @@ class MEDIA_EXPORT VideoCaptureDevice { + Name(); + Name(const std::string& name, const std::string& id); + +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_BSD) + // Linux/CrOS targets Capture Api type: it can only be set on construction. + enum CaptureApiType { + V4L2_SINGLE_PLANE, +@@ -83,7 +83,7 @@ class MEDIA_EXPORT VideoCaptureDevice { + #endif + + #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \ +- defined(OS_ANDROID) ++ defined(OS_ANDROID) || defined(OS_BSD) + Name(const std::string& name, + const std::string& id, + const CaptureApiType api_type); +@@ -120,7 +120,7 @@ class MEDIA_EXPORT VideoCaptureDevice { + bool operator<(const Name& other) const { return unique_id_ < other.id(); } + + #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \ +- defined(OS_ANDROID) ++ defined(OS_ANDROID) || defined(OS_BSD) + CaptureApiType capture_api_type() const { + return capture_api_class_.capture_api_type(); + } +@@ -144,7 +144,7 @@ class MEDIA_EXPORT VideoCaptureDevice { + std::string device_name_; + std::string unique_id_; + #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \ +- defined(OS_ANDROID) ++ defined(OS_ANDROID) || defined(OS_BSD) + // This class wraps the CaptureApiType to give it a by default value if not + // initialized. + class CaptureApiClass { diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__factory.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__factory.cc new file mode 100644 index 000000000000..69895bcf3b7b --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__factory.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/media/capture/video/video_capture_device_factory.cc.orig 2017-04-23 20:12:45 UTC ++++ src/3rdparty/chromium/media/capture/video/video_capture_device_factory.cc +@@ -55,7 +55,7 @@ void VideoCaptureDeviceFactory::Enumerat + } + + #if !defined(OS_MACOSX) && !defined(OS_LINUX) && !defined(OS_ANDROID) && \ +- !defined(OS_WIN) ++ !defined(OS_WIN) && !defined(OS_BSD) + // static + VideoCaptureDeviceFactory* + VideoCaptureDeviceFactory::CreateVideoCaptureDeviceFactory( diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_filters_vp9__parser.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_filters_vp9__parser.h new file mode 100644 index 000000000000..00b1b7c54a14 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_filters_vp9__parser.h @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/media/filters/vp9_parser.h.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/media/filters/vp9_parser.h +@@ -14,6 +14,7 @@ + + #include + #include ++#include + + #include + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_media.gyp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_media.gyp new file mode 100644 index 000000000000..7f5ced262def --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_media.gyp @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/media/media.gyp.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/media/media.gyp +@@ -809,7 +809,7 @@ + 'capture/video/linux/v4l2_capture_delegate_multi_plane.h', + ], + }], +- ['OS=="linux"', { ++ ['OS=="linux" or os_bsd==1', { + 'conditions': [ + ['use_x11==1', { + 'dependencies': [ +@@ -1146,7 +1146,7 @@ + 'base/simd/filter_yuv_sse2.cc', + ], + }], +- ['OS!="linux" and OS!="win"', { ++ ['OS!="linux" and OS!="win" and os_bsd!=1', { + 'sources!': [ + 'base/keyboard_event_counter.cc', + 'base/keyboard_event_counter.h', diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_address__tracker__linux.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_address__tracker__linux.h new file mode 100644 index 000000000000..8df9c3a550eb --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_address__tracker__linux.h @@ -0,0 +1,15 @@ +--- src/3rdparty/chromium/net/base/address_tracker_linux.h.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/net/base/address_tracker_linux.h +@@ -6,10 +6,12 @@ + #define NET_BASE_ADDRESS_TRACKER_LINUX_H_ + + #include // Needed to include netlink. ++#if !defined(__FreeBSD__) + // Mask superfluous definition of |struct net|. This is fixed in Linux 2.6.38. + #define net net_kernel + #include + #undef net ++#endif + #include + + #include diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_network__interfaces__posix.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_network__interfaces__posix.cc new file mode 100644 index 000000000000..887c98fbecf2 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_network__interfaces__posix.cc @@ -0,0 +1,21 @@ +Piggyback on the existing #ifdefs for the definitions of some stub functions. +--- src/3rdparty/chromium/net/base/network_interfaces_posix.cc.orig 2017-04-20 16:49:59 UTC ++++ src/3rdparty/chromium/net/base/network_interfaces_posix.cc +@@ -9,7 +9,7 @@ + + #include "base/memory/scoped_ptr.h" + +-#if !defined(OS_NACL) ++#if !defined(OS_NACL) && !defined(OS_BSD) + #include "net/base/network_interfaces_posix.h" + #include + #include +@@ -17,7 +17,7 @@ + + namespace net { + +-#if !defined(OS_NACL) ++#if !defined(OS_NACL) && !defined(OS_BSD) + namespace internal { + + // The application layer can pass |policy| defined in net_util.h to diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_dns_address__sorter__posix.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_dns_address__sorter__posix.cc new file mode 100644 index 000000000000..704fb4a04a09 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_dns_address__sorter__posix.cc @@ -0,0 +1,11 @@ +Needed on FreeBSD 10.3. +--- src/3rdparty/chromium/net/dns/address_sorter_posix.cc.orig 2017-04-20 10:17:24 UTC ++++ src/3rdparty/chromium/net/dns/address_sorter_posix.cc +@@ -11,6 +11,7 @@ + #include // Must be included before ifaddrs.h. + #include + #include ++#include + #include + #include + #include diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_dns_dns__reloader.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_dns_dns__reloader.cc new file mode 100644 index 000000000000..a70775f11d55 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_dns_dns__reloader.cc @@ -0,0 +1,17 @@ +Include all headers required by res_init(3) and friends. + +Note that as of base r289315 (present in FreeBSD 11+), the libc resolver +already reloads /etc/resolv.conf when it is changed, so we should also consider +whether to just disable this functionality in Chromium altogether. +--- src/3rdparty/chromium/net/dns/dns_reloader.cc.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/net/dns/dns_reloader.cc +@@ -7,6 +7,9 @@ + #if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \ + !defined(OS_ANDROID) + ++#include ++#include ++#include + #include + + #include "base/lazy_instance.h" diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_net.gypi b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_net.gypi new file mode 100644 index 000000000000..587b5007cb84 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_net.gypi @@ -0,0 +1,33 @@ +--- src/3rdparty/chromium/net/net.gypi.orig 2017-04-19 19:48:59 UTC ++++ src/3rdparty/chromium/net/net.gypi +@@ -435,8 +435,8 @@ + 'android/network_library.h', + 'android/traffic_stats.cc', + 'android/traffic_stats.h', +- 'base/address_tracker_linux.cc', +- 'base/address_tracker_linux.h', ++ # 'base/address_tracker_linux.cc', ++ # 'base/address_tracker_linux.h', + 'base/backoff_entry.cc', + 'base/backoff_entry.h', + 'base/backoff_entry_serializer.cc', +@@ -497,8 +497,8 @@ + 'base/network_change_notifier.cc', + 'base/network_change_notifier.h', + 'base/network_change_notifier_factory.h', +- 'base/network_change_notifier_linux.cc', +- 'base/network_change_notifier_linux.h', ++ # 'base/network_change_notifier_linux.cc', ++ # 'base/network_change_notifier_linux.h', + 'base/network_change_notifier_mac.cc', + 'base/network_change_notifier_mac.h', + 'base/network_change_notifier_win.cc', +@@ -509,7 +509,7 @@ + 'base/network_delegate.h', + 'base/network_delegate_impl.cc', + 'base/network_delegate_impl.h', +- 'base/network_interfaces_linux.cc', ++ # 'base/network_interfaces_linux.cc', + 'base/network_interfaces_mac.cc', + 'base/network_interfaces_win.cc', + 'base/network_quality_estimator.cc', diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ppapi_shared__impl_private_net__address__private__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ppapi_shared__impl_private_net__address__private__impl.cc new file mode 100644 index 000000000000..404c8f1aff24 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ppapi_shared__impl_private_net__address__private__impl.cc @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/ppapi/shared_impl/private/net_address_private_impl.cc.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/ppapi/shared_impl/private/net_address_private_impl.cc +@@ -24,6 +24,7 @@ + #include + #elif defined(OS_POSIX) && !defined(OS_NACL) + #include ++#include + #include + #include + #endif diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_skia_skia__chrome.gypi b/www/qt5-webengine/files/patch-src_3rdparty_chromium_skia_skia__chrome.gypi new file mode 100644 index 000000000000..9f69f91897fb --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_skia_skia__chrome.gypi @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/skia/skia_chrome.gypi.orig 2017-04-20 12:39:06 UTC ++++ src/3rdparty/chromium/skia/skia_chrome.gypi +@@ -66,7 +66,7 @@ + 'ext/skia_utils_base.cc', + ], + }], +- [ 'OS != "android" and (OS != "linux" or use_cairo==1)', { ++ [ 'OS != "android" and ((OS != "linux" and os_bsd != 1) or use_cairo==1)', { + 'sources!': [ + 'ext/bitmap_platform_device_skia.cc', + ], diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_bindings_core_v8_V8ScriptRunner.cpp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_bindings_core_v8_V8ScriptRunner.cpp new file mode 100644 index 000000000000..9874c530767c --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_bindings_core_v8_V8ScriptRunner.cpp @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/WebKit/Source/bindings/core/v8/V8ScriptRunner.cpp.orig 2017-04-11 12:57:39 UTC ++++ src/3rdparty/chromium/third_party/WebKit/Source/bindings/core/v8/V8ScriptRunner.cpp +@@ -43,6 +43,8 @@ + + #if OS(WIN) + #include ++#elif defined(__FreeBSD__) ++#include + #else + #include + #endif diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_core_core.gyp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_core_core.gyp new file mode 100644 index 000000000000..7c582ba58d39 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_core_core.gyp @@ -0,0 +1,34 @@ +--- src/3rdparty/chromium/third_party/WebKit/Source/core/core.gyp.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/third_party/WebKit/Source/core/core.gyp +@@ -458,13 +458,13 @@ + 'layout/LayoutThemeMac.mm', + ], + }], +- ['OS != "linux"', { ++ ['OS != "linux" and os_bsd != 1', { + 'sources!': [ + 'layout/LayoutThemeLinux.cpp', + 'layout/LayoutThemeLinux.h', + ], + }], +- ['OS != "linux" and OS != "android"', { ++ ['OS != "linux" and OS != "android" and os_bsd != 1', { + 'sources!': [ + 'layout/LayoutThemeFontProviderLinux.cpp', + ], +@@ -785,13 +785,13 @@ + 'layout/LayoutThemeMac.mm', + ], + }], +- ['OS != "linux"', { ++ ['OS != "linux" and os_bsd != 1', { + 'sources!': [ + 'layout/LayoutThemeLinux.cpp', + 'layout/LayoutThemeLinux.h', + ], + }], +- ['OS != "linux" and OS != "android"', { ++ ['OS != "linux" and OS != "android" and os_bsd == 1', { + 'sources!': [ + 'layout/LayoutThemeFontProviderLinux.cpp', + ], diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_blink__platform.gyp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_blink__platform.gyp new file mode 100644 index 000000000000..125b0ceb27a5 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_blink__platform.gyp @@ -0,0 +1,38 @@ +--- src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp +@@ -203,7 +204,7 @@ + ['include', 'graphics/cpu/x86/WebGLImageConversionSSE\\.h$'], + ], + }], +- ['OS=="linux" or OS=="android" or OS=="win"', { ++ ['OS=="linux" or OS=="android" or OS=="win" or os_bsd==1', { + 'sources/': [ + # Cherry-pick files excluded by the broader regular expressions above. + ['include', 'fonts/opentype/OpenTypeTypes\\.h$'], +@@ -214,7 +215,7 @@ + ], + }, + ], +- ['OS=="linux" or OS=="android"', { ++ ['OS=="linux" or OS=="android" or os_bsd==1', { + 'sources/': [ + ['include', 'fonts/linux/FontPlatformDataLinux\\.cpp$'], + ] +@@ -307,7 +308,7 @@ + ['exclude', 'scroll/ScrollbarThemeMac'], + ], + }], +- ['OS != "linux" and OS != "mac" and OS != "win"', { ++ ['OS != "linux" and OS != "mac" and OS != "win" and os_bsd != 1', { + 'sources/': [ + ['exclude', 'VDMX[^/]+\\.(cpp|h)$'], + ], +@@ -350,7 +351,7 @@ + ['exclude', 'Android\\.cpp$'], + ], + }], +- ['OS=="linux"', { ++ ['OS=="linux" or os_bsd==1', { + 'dependencies': [ + '<(DEPTH)/build/linux/system.gyp:fontconfig', + ], diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_fonts_FontPlatformData.cpp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_fonts_FontPlatformData.cpp new file mode 100644 index 000000000000..8f17c643774d --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_fonts_FontPlatformData.cpp @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/WebKit/Source/platform/fonts/FontPlatformData.cpp.orig 2017-04-11 14:26:52 UTC ++++ src/3rdparty/chromium/third_party/WebKit/Source/platform/fonts/FontPlatformData.cpp +@@ -357,7 +357,7 @@ PassRefPtr FontPlatformData::openTypeTab + { + RefPtr buffer; + +- SkFontTableTag tag = WTF::bswap32(table); ++ SkFontTableTag tag = bswap32(table); + const size_t tableSize = m_typeface->getTableSize(tag); + if (tableSize) { + Vector tableBuffer(tableSize); diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_heap_StackFrameDepth.cpp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_heap_StackFrameDepth.cpp new file mode 100644 index 000000000000..09b881e07fe2 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_platform_heap_StackFrameDepth.cpp @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp +@@ -6,6 +6,8 @@ + + #include "public/platform/Platform.h" + ++#include ++ + #if OS(WIN) + #include + #include diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_web_web.gyp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_web_web.gyp new file mode 100644 index 000000000000..51b246a237da --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_web_web.gyp @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/WebKit/Source/web/web.gyp.orig 2017-04-19 18:03:26 UTC ++++ src/3rdparty/chromium/third_party/WebKit/Source/web/web.gyp +@@ -161,7 +161,7 @@ + '../core/core.gyp:webcore', + ], + }], +- ['OS == "linux"', { ++ ['OS == "linux" or os_bsd == 1', { + 'dependencies': [ + '<(DEPTH)/build/linux/system.gyp:fontconfig', + ], diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_wtf_ByteSwap.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_wtf_ByteSwap.h new file mode 100644 index 000000000000..82d3e602a187 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_WebKit_Source_wtf_ByteSwap.h @@ -0,0 +1,18 @@ +--- src/3rdparty/chromium/third_party/WebKit/Source/wtf/ByteSwap.h.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/third_party/WebKit/Source/wtf/ByteSwap.h +@@ -52,9 +52,15 @@ ALWAYS_INLINE uint16_t bswap16(uint16_t x) { return _b + + #else + ++#ifndef bswap64 + ALWAYS_INLINE uint64_t bswap64(uint64_t x) { return __builtin_bswap64(x); } ++#endif ++#ifndef bswap32 + ALWAYS_INLINE uint32_t bswap32(uint32_t x) { return __builtin_bswap32(x); } ++#endif ++#ifndef bswap16 + ALWAYS_INLINE uint16_t bswap16(uint16_t x) { return __builtin_bswap16(x); } ++#endif + + #endif + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_mem.c b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_mem.c new file mode 100644 index 000000000000..4d284a4d486e --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_ffmpeg_libavutil_mem.c @@ -0,0 +1,12 @@ +--- src/3rdparty/chromium/third_party/ffmpeg/libavutil/mem.c.orig 2017-04-28 19:55:07 UTC ++++ src/3rdparty/chromium/third_party/ffmpeg/libavutil/mem.c +@@ -32,9 +32,6 @@ + #include + #include + #include +-#if HAVE_MALLOC_H +-#include +-#endif + + #include "avassert.h" + #include "avutil.h" diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_libjingle_libjingle.gyp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_libjingle_libjingle.gyp new file mode 100644 index 000000000000..cc20a13d6502 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_libjingle_libjingle.gyp @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/libjingle/libjingle.gyp.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/third_party/libjingle/libjingle.gyp +@@ -395,7 +395,7 @@ + ], + 'conditions': [ + # TODO(mallinath) - Enable SCTP for iOS. +- ['OS!="ios"', { ++ ['OS!="ios" and os_bsd!=1', { + 'defines': [ + 'HAVE_SCTP', + ], diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_ots_include_opentype-sanitiser.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_ots_include_opentype-sanitiser.h new file mode 100644 index 000000000000..d859263a3041 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_ots_include_opentype-sanitiser.h @@ -0,0 +1,12 @@ +Already fixed upstream: +https://github.com/khaledhosny/ots/commit/5d82ccd35fa61f605a43a5433625e379ca0f4018 +--- src/3rdparty/chromium/third_party/ots/include/opentype-sanitiser.h.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/third_party/ots/include/opentype-sanitiser.h +@@ -22,6 +22,7 @@ typedef unsigned __int64 uint64_t; + #else + #include + #include ++#include + #endif + + #include diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_sfntly_src_cpp_src_sfntly_table_core_cmap__table.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_sfntly_src_cpp_src_sfntly_table_core_cmap__table.cc new file mode 100644 index 000000000000..22d6b23e6524 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_sfntly_src_cpp_src_sfntly_table_core_cmap__table.cc @@ -0,0 +1,47 @@ +--- src/3rdparty/chromium/third_party/sfntly/src/cpp/src/sfntly/table/core/cmap_table.cc.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/third_party/sfntly/src/cpp/src/sfntly/table/core/cmap_table.cc +@@ -439,7 +439,7 @@ CMapTable::CMapFormat0::Builder::Builder( + } + + CMapTable::CMapFormat0::Builder::Builder(const CMapId& cmap_id) +- : CMap::Builder(reinterpret_cast(NULL), ++ : CMap::Builder(static_cast(NULL), + CMapFormat::kFormat0, + cmap_id) { + } +@@ -563,7 +563,7 @@ CMapTable::CMapFormat2::Builder::Builder(WritableFontD + : CMapTable::CMap::Builder(data ? down_cast( + data->Slice(offset, data->ReadUShort( + offset + Offset::kFormat0Length))) +- : reinterpret_cast(NULL), ++ : static_cast(NULL), + CMapFormat::kFormat2, cmap_id) { + // TODO(arthurhsu): FIXIT: heavy lifting and leak, need fix. + } +@@ -574,7 +574,7 @@ CMapTable::CMapFormat2::Builder::Builder(ReadableFontD + : CMapTable::CMap::Builder(data ? down_cast( + data->Slice(offset, data->ReadUShort( + offset + Offset::kFormat0Length))) +- : reinterpret_cast(NULL), ++ : static_cast(NULL), + CMapFormat::kFormat2, cmap_id) { + // TODO(arthurhsu): FIXIT: heavy lifting and leak, need fix. + } +@@ -958,7 +958,7 @@ CMapTable::CMapFormat4::Builder::Builder(WritableFontD + CMapTable::CMapFormat4::Builder::Builder(SegmentList* segments, + IntegerList* glyph_id_array, + const CMapId& cmap_id) +- : CMap::Builder(reinterpret_cast(NULL), ++ : CMap::Builder(static_cast(NULL), + CMapFormat::kFormat4, cmap_id), + segments_(segments->begin(), segments->end()), + glyph_id_array_(glyph_id_array->begin(), glyph_id_array->end()) { +@@ -966,7 +966,7 @@ CMapTable::CMapFormat4::Builder::Builder(SegmentList* + } + + CMapTable::CMapFormat4::Builder::Builder(const CMapId& cmap_id) +- : CMap::Builder(reinterpret_cast(NULL), ++ : CMap::Builder(static_cast(NULL), + CMapFormat::kFormat4, cmap_id) { + } + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_base_platform__thread.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_base_platform__thread.cc new file mode 100644 index 000000000000..5fcba0226f58 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_base_platform__thread.cc @@ -0,0 +1,29 @@ +--- src/3rdparty/chromium/third_party/webrtc/base/platform_thread.cc.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/third_party/webrtc/base/platform_thread.cc +@@ -12,6 +12,8 @@ + + #include "webrtc/base/checks.h" + ++#include ++ + #if defined(WEBRTC_LINUX) + #include + #include +@@ -30,6 +32,8 @@ PlatformThreadId CurrentThreadId() { + ret = syscall(__NR_gettid); + #elif defined(WEBRTC_ANDROID) + ret = gettid(); ++#elif defined(BSD) ++ ret = pthread_getthreadid_np(); + #else + // Default implementation for nacl and solaris. + ret = reinterpret_cast(pthread_self()); +@@ -73,6 +77,8 @@ void SetCurrentThreadName(const char* na + prctl(PR_SET_NAME, reinterpret_cast(name)); + #elif defined(WEBRTC_MAC) || defined(WEBRTC_IOS) + pthread_setname_np(name); ++#elif defined(BSD) ++ pthread_set_name_np(pthread_self(), name); + #endif + } + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_base_taskrunner.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_base_taskrunner.cc new file mode 100644 index 000000000000..bb1e0c34499b --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_base_taskrunner.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/webrtc/base/taskrunner.cc.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/third_party/webrtc/base/taskrunner.cc +@@ -102,7 +102,7 @@ void TaskRunner::InternalRunTasks(bool i + std::vector::iterator it; + it = std::remove(tasks_.begin(), + tasks_.end(), +- reinterpret_cast(NULL)); ++ static_cast(NULL)); + + tasks_.erase(it, tasks_.end()); + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_build_common.gypi b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_build_common.gypi new file mode 100644 index 000000000000..41bf8056c6ed --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_build_common.gypi @@ -0,0 +1,18 @@ +Define WEBRTC_BSD, to better handle FreeBSD in the sources. + +Copied from www/chromium. + +--- src/3rdparty/chromium/third_party/webrtc/build/common.gypi.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/third_party/webrtc/build/common.gypi +@@ -352,6 +352,11 @@ + 'WEBRTC_LINUX', + ], + }], ++ ['os_bsd==1', { ++ 'defines': [ ++ 'BSD', ++ ], ++ }], + ['OS=="mac"', { + 'defines': [ + 'WEBRTC_MAC', diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_rtp__rtcp_source_rtp__utility.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_rtp__rtcp_source_rtp__utility.cc new file mode 100644 index 000000000000..372e3c3f57ab --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_rtp__rtcp_source_rtp__utility.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/third_party/webrtc/modules/rtp_rtcp/source/rtp_utility.cc.orig 2017-04-20 13:10:18 UTC ++++ src/3rdparty/chromium/third_party/webrtc/modules/rtp_rtcp/source/rtp_utility.cc +@@ -57,7 +57,7 @@ bool StringCompare(const char* str1, con + const uint32_t length) { + return _strnicmp(str1, str2, length) == 0; + } +-#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC) ++#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC) || defined(BSD) + bool StringCompare(const char* str1, const char* str2, + const uint32_t length) { + return strncasecmp(str1, str2, length) == 0; diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_video__capture_device__info__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_video__capture_device__info__impl.cc new file mode 100644 index 000000000000..b15d3be6f876 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_modules_video__capture_device__info__impl.cc @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/third_party/webrtc/modules/video_capture/device_info_impl.cc.orig 2017-04-19 18:46:33 UTC ++++ src/3rdparty/chromium/third_party/webrtc/modules/video_capture/device_info_impl.cc +@@ -11,6 +11,7 @@ + #include + #include + ++#include "webrtc/base/stringutils.h" + #include "webrtc/modules/video_capture/device_info_impl.h" + #include "webrtc/modules/video_capture/video_capture_config.h" + #include "webrtc/system_wrappers/include/logging.h" diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_system__wrappers_source_atomic32__posix.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_system__wrappers_source_atomic32__posix.cc new file mode 100644 index 000000000000..f101c3e06512 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_system__wrappers_source_atomic32__posix.cc @@ -0,0 +1,10 @@ +--- src/3rdparty/chromium/third_party/webrtc/system_wrappers/source/atomic32_posix.cc.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/third_party/webrtc/system_wrappers/source/atomic32_posix.cc +@@ -12,7 +12,6 @@ + + #include + #include +-#include + + #include "webrtc/common_types.h" + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_system__wrappers_source_condition__variable.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_system__wrappers_source_condition__variable.cc new file mode 100644 index 000000000000..dceaea3ce172 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_system__wrappers_source_condition__variable.cc @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/third_party/webrtc/system_wrappers/source/condition_variable.cc.orig 2017-04-19 18:46:43 UTC ++++ src/3rdparty/chromium/third_party/webrtc/system_wrappers/source/condition_variable.cc +@@ -14,7 +14,7 @@ + #include + #include "webrtc/system_wrappers/source/condition_variable_event_win.h" + #include "webrtc/system_wrappers/source/condition_variable_native_win.h" +-#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC) ++#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC) || defined(BSD) + #include + #include "webrtc/system_wrappers/source/condition_variable_posix.h" + #endif +@@ -31,7 +31,7 @@ ConditionVariableWrapper* ConditionVaria + ret_val = new ConditionVariableEventWin(); + } + return ret_val; +-#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC) ++#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC) || defined(BSD) + return ConditionVariablePosix::Create(); + #else + return NULL; diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_voice__engine_voice__engine__defines.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_voice__engine_voice__engine__defines.h new file mode 100644 index 000000000000..1116c256f2fd --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_voice__engine_voice__engine__defines.h @@ -0,0 +1,25 @@ +--- src/3rdparty/chromium/third_party/webrtc/voice_engine/voice_engine_defines.h.orig 2016-11-07 14:46:18 UTC ++++ src/3rdparty/chromium/third_party/webrtc/voice_engine/voice_engine_defines.h +@@ -203,19 +203,21 @@ inline int VoEChannelId(int moduleId) { + + // *** LINUX *** + +-#ifdef WEBRTC_LINUX ++#if defined(WEBRTC_LINUX) || defined(BSD) + + #include + #include + #include + #include + #include ++#ifndef BSD + #ifndef QNX + #include + #ifndef ANDROID + #include + #endif // ANDROID + #endif // QNX ++#endif // BSD + #include + #include + #include diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_events_event__switches.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_events_event__switches.cc new file mode 100644 index 000000000000..1ea4537d4ba9 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_events_event__switches.cc @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/ui/events/event_switches.cc.orig 2017-04-19 09:39:54 UTC ++++ src/3rdparty/chromium/ui/events/event_switches.cc +@@ -28,7 +28,7 @@ const char kTouchEventsDisabled[] = "dis + const char kCompensateForUnstablePinchZoom[] = + "compensate-for-unstable-pinch-zoom"; + +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_FREEBSD) + // Tells chrome to interpret events from these devices as touch events. Only + // available with XInput 2 (i.e. X server 1.8 or above). The id's of the + // devices can be retrieved from 'xinput list'. diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_events_event__switches.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_events_event__switches.h new file mode 100644 index 000000000000..7ff949a31007 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_events_event__switches.h @@ -0,0 +1,11 @@ +--- src/3rdparty/chromium/ui/events/event_switches.h.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/ui/events/event_switches.h +@@ -18,7 +18,7 @@ EVENTS_BASE_EXPORT extern const char kTouchEventsEnabl + EVENTS_BASE_EXPORT extern const char kTouchEventsDisabled[]; + EVENTS_BASE_EXPORT extern const char kCompensateForUnstablePinchZoom[]; + +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_FREEBSD) + EVENTS_BASE_EXPORT extern const char kTouchDevices[]; + #endif + diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl.gyp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl.gyp new file mode 100644 index 000000000000..a0c297da55bc --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl.gyp @@ -0,0 +1,20 @@ +--- src/3rdparty/chromium/ui/gl/gl.gyp.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/ui/gl/gl.gyp +@@ -132,7 +132,7 @@ + 'trace_util.h', + ], + 'conditions': [ +- ['OS in ("win", "android", "linux")', { ++ ['OS in ("win", "android", "linux", "freebsd")', { + 'sources': [ + 'egl_util.cc', + 'egl_util.h', +@@ -150,7 +150,7 @@ + 'gl_surface_egl.h', + ], + }], +- ['OS in ("android", "linux")', { ++ ['OS in ("android", "linux", "freebsd")', { + 'sources': [ + 'gl_implementation_osmesa.cc', + 'gl_implementation_osmesa.h', diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_crankshaft_lithium.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_crankshaft_lithium.cc new file mode 100644 index 000000000000..b71d4356ab2a --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_crankshaft_lithium.cc @@ -0,0 +1,14 @@ +--- src/3rdparty/chromium/v8/src/crankshaft/lithium.cc.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/v8/src/crankshaft/lithium.cc +@@ -125,11 +125,6 @@ void LOperand::PrintTo(StringStream* stream) { + + + template +-LSubKindOperand* +-LSubKindOperand::cache = NULL; +- +- +-template + void LSubKindOperand::SetUpCache() { + if (cache) return; + cache = new LSubKindOperand[kNumCachedOperands]; diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_crankshaft_lithium.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_crankshaft_lithium.h new file mode 100644 index 000000000000..8cf78733e620 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_crankshaft_lithium.h @@ -0,0 +1,14 @@ +--- src/3rdparty/chromium/v8/src/crankshaft/lithium.h.orig 2017-04-11 14:08:45 UTC ++++ src/3rdparty/chromium/v8/src/crankshaft/lithium.h +@@ -344,6 +344,11 @@ LITHIUM_OPERAND_LIST(LITHIUM_TYPEDEF_SUBKIND_OPERAND_C + #undef LITHIUM_TYPEDEF_SUBKIND_OPERAND_CLASS + + ++template ++LSubKindOperand* ++LSubKindOperand::cache = NULL; ++ ++ + class LParallelMove final : public ZoneObject { + public: + explicit LParallelMove(Zone* zone) : move_operands_(4, zone) { } diff --git a/www/qt5-webengine/files/patch-src_core_core__common.pri b/www/qt5-webengine/files/patch-src_core_core__common.pri new file mode 100644 index 000000000000..06b600ea7658 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_core_core__common.pri @@ -0,0 +1,13 @@ +Do not pass --no-undefined to the linker, Chromium uses `environ'. +--- src/core/core_common.pri.orig 2017-04-18 20:27:53 UTC ++++ src/core/core_common.pri +@@ -5,6 +5,9 @@ TARGET = QtWebEngineCore + QT += qml quick webchannel + QT_PRIVATE += quick-private gui-private core-private webenginecoreheaders-private + ++# The code uses environ, so we cannot pass --no-undefined to the linker. ++freebsd: QMAKE_LFLAGS_NOUNDEF = ++ + # Make QtCreator happy. + CHROMIUM_SRC_DIR = $$QTWEBENGINE_ROOT/$$getChromiumSrcDir() + INCLUDEPATH += $$CHROMIUM_SRC_DIR diff --git a/www/qt5-webengine/files/patch-src_core_core__module.pro b/www/qt5-webengine/files/patch-src_core_core__module.pro new file mode 100644 index 000000000000..2fe5374da0f4 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_core_core__module.pro @@ -0,0 +1,13 @@ +Generate split out debug files on FreeBSD too. + +--- src/core/core_module.pro.orig 2017-04-20 22:41:02 UTC ++++ src/core/core_module.pro +@@ -42,7 +42,7 @@ CONFIG -= bsymbolic_functions + + contains(QT_CONFIG, egl): CONFIG += egl + +-linux: contains(QT_CONFIG, separate_debug_info): QMAKE_POST_LINK="cd $(DESTDIR) && $(STRIP) --strip-unneeded $(TARGET)" ++unix: contains(QT_CONFIG, separate_debug_info): QMAKE_POST_LINK="cd $(DESTDIR) && $(STRIP) --strip-unneeded $(TARGET)" + + REPACK_DIR = $$OUT_PWD/$$getConfigDir()/gen/repack + # Duplicated from resources/resources.gyp diff --git a/www/qt5-webengine/files/patch-src_core_gyp__run.pro b/www/qt5-webengine/files/patch-src_core_gyp__run.pro new file mode 100644 index 000000000000..e9a970cf3568 --- /dev/null +++ b/www/qt5-webengine/files/patch-src_core_gyp__run.pro @@ -0,0 +1,13 @@ +Include the freebsd.pri file provided by the port, to pass FreeBSD specific +settings to gyp. + +--- src/core/gyp_run.pro.orig 2017-04-11 14:08:46 UTC ++++ src/core/gyp_run.pro +@@ -15,6 +15,7 @@ cross_compile { + linux: include(config/desktop_linux.pri) + mac: include(config/mac_osx.pri) + win32: include(config/windows.pri) ++ freebsd: include(config/freebsd.pri) + } + GYP_CONFIG += qtwe_process_name_debug=$$QTWEBENGINEPROCESS_NAME_DEBUG + GYP_CONFIG += qtwe_process_name_release=$$QTWEBENGINEPROCESS_NAME_RELEASE diff --git a/www/qt5-webengine/files/patch-src_core_qtwebengine.gypi b/www/qt5-webengine/files/patch-src_core_qtwebengine.gypi new file mode 100644 index 000000000000..563c19ad919e --- /dev/null +++ b/www/qt5-webengine/files/patch-src_core_qtwebengine.gypi @@ -0,0 +1,11 @@ +--- src/core/qtwebengine.gypi.orig 2017-04-19 08:40:53 UTC ++++ src/core/qtwebengine.gypi +@@ -109,7 +109,7 @@ + # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. + 'msvs_disabled_warnings': [ 4267, 4996, ], + }], # OS=="win" +- ['OS=="linux"', { ++ ['os_posix==1', { + 'dependencies': [ + '<(chromium_src_dir)/build/linux/system.gyp:fontconfig', + ], diff --git a/www/qt5-webengine/files/patch-tools-qmake-config.tests-enable-on-FreeBSD b/www/qt5-webengine/files/patch-tools-qmake-config.tests-enable-on-FreeBSD new file mode 100644 index 000000000000..827dbb2e1881 --- /dev/null +++ b/www/qt5-webengine/files/patch-tools-qmake-config.tests-enable-on-FreeBSD @@ -0,0 +1,22 @@ +--- tools/qmake/config.tests/khr/khr.pro.orig 2017-04-19 08:32:39 UTC ++++ tools/qmake/config.tests/khr/khr.pro +@@ -3,4 +3,4 @@ + + CONFIG-=qt + +-linux:SOURCES += khr.cpp ++SOURCES += khr.cpp +--- tools/qmake/config.tests/snappy/snappy.pro.orig 2017-04-11 14:08:45 UTC ++++ tools/qmake/config.tests/snappy/snappy.pro +@@ -1,3 +1,3 @@ +-linux:SOURCES += snappy.cpp ++SOURCES += snappy.cpp + LIBS += -lsnappy + CONFIG -= qt +--- tools/qmake/config.tests/srtp/srtp.pro.orig 2017-04-11 14:08:45 UTC ++++ tools/qmake/config.tests/srtp/srtp.pro +@@ -1,3 +1,3 @@ +-linux:SOURCES += srtp.cpp ++SOURCES += srtp.cpp + LIBS += -lsrtp + CONFIG -= qt diff --git a/www/qt5-webengine/files/patch-tools_qmake_mkspecs_features_configure.prf b/www/qt5-webengine/files/patch-tools_qmake_mkspecs_features_configure.prf new file mode 100644 index 000000000000..5e40ded1ab08 --- /dev/null +++ b/www/qt5-webengine/files/patch-tools_qmake_mkspecs_features_configure.prf @@ -0,0 +1,29 @@ +--- tools/qmake/mkspecs/features/configure.prf.orig 2017-04-19 08:37:44 UTC ++++ tools/qmake/mkspecs/features/configure.prf +@@ -4,7 +4,7 @@ load(functions) + + defineTest(runConfigure) { + webengine_successfully_configured: return(true) +- linux:contains(QT_CONFIG,no-pkg-config) { ++ unix:contains(QT_CONFIG,no-pkg-config) { + skipBuild("pkg-config is required") + return(false) + } +@@ -20,7 +20,7 @@ defineTest(runConfigure) { + qtCompileTest($$test) + } + +- linux { ++ unix { + !config_khr:skipBuild("khronos development headers appear to be missing (mesa/libegl1-mesa-dev)") + + REQUIRED_PACKAGES = dbus-1 fontconfig +@@ -78,7 +78,7 @@ defineTest(runConfigure) { + # This is called from default_post, at which point we've also parsed + # command line options + defineTest(finalizeConfigure) { +- linux { ++ unix { + use?(nss) { + log("Certificate handling.............. Using system NSS$${EOL}") + } else { diff --git a/www/qt5-webengine/files/patch-tools_qmake_mkspecs_features_functions.prf b/www/qt5-webengine/files/patch-tools_qmake_mkspecs_features_functions.prf new file mode 100644 index 000000000000..7340be928fb7 --- /dev/null +++ b/www/qt5-webengine/files/patch-tools_qmake_mkspecs_features_functions.prf @@ -0,0 +1,11 @@ +Allow qt5-webengine to be built on FreeBSD with clang + +--- tools/qmake/mkspecs/features/functions.prf.orig 2017-04-11 14:08:45 UTC ++++ tools/qmake/mkspecs/features/functions.prf +@@ -1,5 +1,5 @@ + defineTest(isPlatformSupported) { +- linux { ++ unix { + !gcc:!clang { + skipBuild("Qt WebEngine on Linux requires clang or GCC.") + return(false) diff --git a/www/qt5-webengine/pkg-plist b/www/qt5-webengine/pkg-plist new file mode 100644 index 000000000000..09f0d5a01bf2 --- /dev/null +++ b/www/qt5-webengine/pkg-plist @@ -0,0 +1,195 @@ +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginecertificateerror_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginecontextmenudata_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginedownloaditem_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginedownloaditem_p_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginefaviconprovider_p_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginehistory_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginehistory_p_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebengineloadrequest_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginenavigationrequest_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginenewviewrequest_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebengineprofile_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginescript_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginescript_p_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginesettings_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginesingleton_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebenginetestsupport_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebengineview_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qquickwebengineview_p_p.h +%%QT_INCDIR%%/QtWebEngine/%%FULLVER%%/QtWebEngine/private/qtwebengineglobal_p.h +%%QT_INCDIR%%/QtWebEngine/QQuickWebEngineProfile +%%QT_INCDIR%%/QtWebEngine/QtWebEngine +%%QT_INCDIR%%/QtWebEngine/QtWebEngineDepends +%%QT_INCDIR%%/QtWebEngine/QtWebEngineVersion +%%QT_INCDIR%%/QtWebEngine/qquickwebengineprofile.h +%%QT_INCDIR%%/QtWebEngine/qtwebengineglobal.h +%%QT_INCDIR%%/QtWebEngine/qtwebengineversion.h +%%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qtwebenginecoreglobal_p.h +%%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebenginecallback_p.h +%%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebenginecookiestore_p.h +%%QT_INCDIR%%/QtWebEngineCore/%%FULLVER%%/QtWebEngineCore/private/qwebengineurlrequestinfo_p.h +%%QT_INCDIR%%/QtWebEngineCore/QWebEngineCallback +%%QT_INCDIR%%/QtWebEngineCore/QWebEngineCookieStore +%%QT_INCDIR%%/QtWebEngineCore/QWebEngineUrlRequestInfo +%%QT_INCDIR%%/QtWebEngineCore/QWebEngineUrlRequestInterceptor +%%QT_INCDIR%%/QtWebEngineCore/QWebEngineUrlRequestJob +%%QT_INCDIR%%/QtWebEngineCore/QWebEngineUrlSchemeHandler +%%QT_INCDIR%%/QtWebEngineCore/QtWebEngineCore +%%QT_INCDIR%%/QtWebEngineCore/QtWebEngineCoreDepends +%%QT_INCDIR%%/QtWebEngineCore/QtWebEngineCoreVersion +%%QT_INCDIR%%/QtWebEngineCore/qtwebenginecoreglobal.h +%%QT_INCDIR%%/QtWebEngineCore/qtwebenginecoreversion.h +%%QT_INCDIR%%/QtWebEngineCore/qwebenginecallback.h +%%QT_INCDIR%%/QtWebEngineCore/qwebenginecookiestore.h +%%QT_INCDIR%%/QtWebEngineCore/qwebengineurlrequestinfo.h +%%QT_INCDIR%%/QtWebEngineCore/qwebengineurlrequestinterceptor.h +%%QT_INCDIR%%/QtWebEngineCore/qwebengineurlrequestjob.h +%%QT_INCDIR%%/QtWebEngineCore/qwebengineurlschemehandler.h +%%QT_INCDIR%%/QtWebEngineWidgets/%%FULLVER%%/QtWebEngineWidgets/private/qwebenginedownloaditem_p.h +%%QT_INCDIR%%/QtWebEngineWidgets/%%FULLVER%%/QtWebEngineWidgets/private/qwebenginehistory_p.h +%%QT_INCDIR%%/QtWebEngineWidgets/%%FULLVER%%/QtWebEngineWidgets/private/qwebenginepage_p.h +%%QT_INCDIR%%/QtWebEngineWidgets/%%FULLVER%%/QtWebEngineWidgets/private/qwebengineprofile_p.h +%%QT_INCDIR%%/QtWebEngineWidgets/%%FULLVER%%/QtWebEngineWidgets/private/qwebenginescriptcollection_p.h +%%QT_INCDIR%%/QtWebEngineWidgets/%%FULLVER%%/QtWebEngineWidgets/private/qwebengineview_p.h +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineCertificateError +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineContextMenuData +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineDownloadItem +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineFullScreenRequest +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineHistory +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineHistoryItem +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEnginePage +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineProfile +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineScript +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineScriptCollection +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineSettings +%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineView +%%QT_INCDIR%%/QtWebEngineWidgets/QtWebEngineWidgets +%%QT_INCDIR%%/QtWebEngineWidgets/QtWebEngineWidgetsDepends +%%QT_INCDIR%%/QtWebEngineWidgets/QtWebEngineWidgetsVersion +%%QT_INCDIR%%/QtWebEngineWidgets/qtwebenginewidgetsglobal.h +%%QT_INCDIR%%/QtWebEngineWidgets/qtwebenginewidgetsversion.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginecertificateerror.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginecontextmenudata.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginedownloaditem.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginefullscreenrequest.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginehistory.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginepage.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebengineprofile.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginescript.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginescriptcollection.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginesettings.h +%%QT_INCDIR%%/QtWebEngineWidgets/qwebengineview.h +%%QT_CMAKEDIR%%/Qt5Designer/Qt5Designer_QWebEngineViewPlugin.cmake +%%QT_CMAKEDIR%%/Qt5WebEngine/Qt5WebEngineConfig.cmake +%%QT_CMAKEDIR%%/Qt5WebEngine/Qt5WebEngineConfigVersion.cmake +%%QT_CMAKEDIR%%/Qt5WebEngineCore/Qt5WebEngineCoreConfig.cmake +%%QT_CMAKEDIR%%/Qt5WebEngineCore/Qt5WebEngineCoreConfigVersion.cmake +%%QT_CMAKEDIR%%/Qt5WebEngineWidgets/Qt5WebEngineWidgetsConfig.cmake +%%QT_CMAKEDIR%%/Qt5WebEngineWidgets/Qt5WebEngineWidgetsConfigVersion.cmake +%%QT_LIBDIR%%/libQt5WebEngine.prl +%%QT_LIBDIR%%/libQt5WebEngine.so +%%QT_LIBDIR%%/libQt5WebEngine.so.5 +%%QT_LIBDIR%%/libQt5WebEngine.so.%%SHORTVER%% +%%QT_LIBDIR%%/libQt5WebEngine.so.%%FULLVER%% +%%DEBUG%%%%QT_LIBDIR%%/libQt5WebEngine.so.%%FULLVER%%.debug +%%QT_LIBDIR%%/libQt5WebEngineCore.prl +%%QT_LIBDIR%%/libQt5WebEngineCore.so +%%QT_LIBDIR%%/libQt5WebEngineCore.so.5 +%%QT_LIBDIR%%/libQt5WebEngineCore.so.%%SHORTVER%% +%%QT_LIBDIR%%/libQt5WebEngineCore.so.%%FULLVER%% +%%DEBUG%%%%QT_LIBDIR%%/libQt5WebEngineCore.so.%%FULLVER%%.debug +%%QT_LIBDIR%%/libQt5WebEngineWidgets.prl +%%QT_LIBDIR%%/libQt5WebEngineWidgets.so +%%QT_LIBDIR%%/libQt5WebEngineWidgets.so.5 +%%QT_LIBDIR%%/libQt5WebEngineWidgets.so.%%SHORTVER%% +%%QT_LIBDIR%%/libQt5WebEngineWidgets.so.%%FULLVER%% +%%DEBUG%%%%QT_LIBDIR%%/libQt5WebEngineWidgets.so.%%FULLVER%%.debug +%%QT_MKSPECDIR%%/modules/qt_lib_webengine.pri +%%QT_MKSPECDIR%%/modules/qt_lib_webengine_private.pri +%%QT_MKSPECDIR%%/modules/qt_lib_webenginecore.pri +%%QT_MKSPECDIR%%/modules/qt_lib_webenginecore_private.pri +%%QT_MKSPECDIR%%/modules/qt_lib_webenginecoreheaders_private.pri +%%QT_MKSPECDIR%%/modules/qt_lib_webenginewidgets.pri +%%QT_MKSPECDIR%%/modules/qt_lib_webenginewidgets_private.pri +%%QT_PLUGINDIR%%/designer/libqwebengineview.so +%%DEBUG%%%%QT_PLUGINDIR%%/designer/libqwebengineview.so.debug +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/AlertDialog.qml +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/AuthenticationDialog.qml +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/ColorDialog.qml +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/ConfirmDialog.qml +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/FilePicker.qml +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/Menu.qml +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/MenuItem.qml +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/MenuSeparator.qml +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/MessageBubble.qml +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/PromptDialog.qml +%%QT_QMLDIR%%/QtWebEngine/UIDelegates/qmldir +%%QT_QMLDIR%%/QtWebEngine/experimental/libqtwebengineexperimentalplugin.so +%%DEBUG%%%%QT_QMLDIR%%/QtWebEngine/experimental/libqtwebengineexperimentalplugin.so.debug +%%QT_QMLDIR%%/QtWebEngine/experimental/qmldir +%%QT_QMLDIR%%/QtWebEngine/libqtwebengineplugin.so +%%DEBUG%%%%QT_QMLDIR%%/QtWebEngine/libqtwebengineplugin.so.debug +%%QT_QMLDIR%%/QtWebEngine/plugins.qmltypes +%%QT_QMLDIR%%/QtWebEngine/qmldir +libdata/pkgconfig/Qt5WebEngine.pc +libdata/pkgconfig/Qt5WebEngineCore.pc +libdata/pkgconfig/Qt5WebEngineWidgets.pc +%%QT_LIBEXECDIR%%/QtWebEngineProcess +%%QT_DATADIR%%/resources/icudtl.dat +%%QT_DATADIR%%/resources/qtwebengine_devtools_resources.pak +%%QT_DATADIR%%/resources/qtwebengine_resources.pak +%%QT_DATADIR%%/resources/qtwebengine_resources_100p.pak +%%QT_DATADIR%%/resources/qtwebengine_resources_200p.pak +%%QT_L10NDIR%%/qtwebengine_locales/am.pak +%%QT_L10NDIR%%/qtwebengine_locales/ar.pak +%%QT_L10NDIR%%/qtwebengine_locales/bg.pak +%%QT_L10NDIR%%/qtwebengine_locales/bn.pak +%%QT_L10NDIR%%/qtwebengine_locales/ca.pak +%%QT_L10NDIR%%/qtwebengine_locales/cs.pak +%%QT_L10NDIR%%/qtwebengine_locales/da.pak +%%QT_L10NDIR%%/qtwebengine_locales/de.pak +%%QT_L10NDIR%%/qtwebengine_locales/el.pak +%%QT_L10NDIR%%/qtwebengine_locales/en-GB.pak +%%QT_L10NDIR%%/qtwebengine_locales/en-US.pak +%%QT_L10NDIR%%/qtwebengine_locales/es-419.pak +%%QT_L10NDIR%%/qtwebengine_locales/es.pak +%%QT_L10NDIR%%/qtwebengine_locales/et.pak +%%QT_L10NDIR%%/qtwebengine_locales/fa.pak +%%QT_L10NDIR%%/qtwebengine_locales/fi.pak +%%QT_L10NDIR%%/qtwebengine_locales/fil.pak +%%QT_L10NDIR%%/qtwebengine_locales/fr.pak +%%QT_L10NDIR%%/qtwebengine_locales/gu.pak +%%QT_L10NDIR%%/qtwebengine_locales/he.pak +%%QT_L10NDIR%%/qtwebengine_locales/hi.pak +%%QT_L10NDIR%%/qtwebengine_locales/hr.pak +%%QT_L10NDIR%%/qtwebengine_locales/hu.pak +%%QT_L10NDIR%%/qtwebengine_locales/id.pak +%%QT_L10NDIR%%/qtwebengine_locales/it.pak +%%QT_L10NDIR%%/qtwebengine_locales/ja.pak +%%QT_L10NDIR%%/qtwebengine_locales/kn.pak +%%QT_L10NDIR%%/qtwebengine_locales/ko.pak +%%QT_L10NDIR%%/qtwebengine_locales/lt.pak +%%QT_L10NDIR%%/qtwebengine_locales/lv.pak +%%QT_L10NDIR%%/qtwebengine_locales/ml.pak +%%QT_L10NDIR%%/qtwebengine_locales/mr.pak +%%QT_L10NDIR%%/qtwebengine_locales/ms.pak +%%QT_L10NDIR%%/qtwebengine_locales/nb.pak +%%QT_L10NDIR%%/qtwebengine_locales/nl.pak +%%QT_L10NDIR%%/qtwebengine_locales/pl.pak +%%QT_L10NDIR%%/qtwebengine_locales/pt-BR.pak +%%QT_L10NDIR%%/qtwebengine_locales/pt-PT.pak +%%QT_L10NDIR%%/qtwebengine_locales/ro.pak +%%QT_L10NDIR%%/qtwebengine_locales/ru.pak +%%QT_L10NDIR%%/qtwebengine_locales/sk.pak +%%QT_L10NDIR%%/qtwebengine_locales/sl.pak +%%QT_L10NDIR%%/qtwebengine_locales/sr.pak +%%QT_L10NDIR%%/qtwebengine_locales/sv.pak +%%QT_L10NDIR%%/qtwebengine_locales/sw.pak +%%QT_L10NDIR%%/qtwebengine_locales/ta.pak +%%QT_L10NDIR%%/qtwebengine_locales/te.pak +%%QT_L10NDIR%%/qtwebengine_locales/th.pak +%%QT_L10NDIR%%/qtwebengine_locales/tr.pak +%%QT_L10NDIR%%/qtwebengine_locales/uk.pak +%%QT_L10NDIR%%/qtwebengine_locales/vi.pak +%%QT_L10NDIR%%/qtwebengine_locales/zh-CN.pak +%%QT_L10NDIR%%/qtwebengine_locales/zh-TW.pak