aboutsummaryrefslogtreecommitdiff
path: root/www/qt5-webengine
diff options
context:
space:
mode:
authorTobias C. Berner <tcberner@FreeBSD.org>2020-04-13 12:35:58 +0000
committerTobias C. Berner <tcberner@FreeBSD.org>2020-04-13 12:35:58 +0000
commita25eafc3bce88330229459fa94b75b13e47bb6be (patch)
tree254f2fdb3d4b84249949fca27e32456dc331e5fb /www/qt5-webengine
parent161589998ce941eb355eeef3dbeb255b5b3cc125 (diff)
downloadports-a25eafc3bce88330229459fa94b75b13e47bb6be.tar.gz
ports-a25eafc3bce88330229459fa94b75b13e47bb6be.zip
Update Qt5 to 5.14.2
Very big thanks go again to kai@ who provided the www/qt5-webengine upgrade (to 5.14.0). Notably, video capture support was re-enabled. Announcement: https://www.qt.io/blog/qt-5.14-has-released PR: 244964 Exp-run by: antoine
Notes
Notes: svn path=/head/; revision=531601
Diffstat (limited to 'www/qt5-webengine')
-rw-r--r--www/qt5-webengine/Makefile7
-rw-r--r--www/qt5-webengine/distinfo6
-rw-r--r--www/qt5-webengine/files/patch-clang12
-rw-r--r--www/qt5-webengine/files/patch-config.tests_khr_khr.pro8
-rw-r--r--www/qt5-webengine/files/patch-config.tests_snappy_snappy.pro7
-rw-r--r--www/qt5-webengine/files/patch-configure.pri30
-rw-r--r--www/qt5-webengine/files/patch-mkspecs_features_configure.prf34
-rw-r--r--www/qt5-webengine/files/patch-mkspecs_features_functions.prf19
-rw-r--r--www/qt5-webengine/files/patch-mkspecs_features_platform.prf19
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_BUILD.gn34
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_allocator__shim.cc10
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_allocator__shim__default__dispatch__to__glibc.cc14
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__internals__posix.h33
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base__switches.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base__switches.h20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_cpu.cc38
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader.cc18
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader__linux.cc13
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_stack__trace.h10
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_memory__mapped__file__posix.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_scoped__file.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_hash_sha1.cc (renamed from www/qt5-webengine/files/patch-src_3rdparty_chromium_base_sha1.cc)4
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_i18n_icu__util.cc8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region.h29
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region__posix.cc38
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_protected__memory__posix.cc31
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_numerics_safe__math__shared__impl.h17
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.h67
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__freebsd.cc147
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_sampling__heap__profiler_sampling__heap__profiler.cc24
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_syslog__logging.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__freebsd.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__posix.cc35
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_allocator.gni20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn62
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_linux_pkg-config.py10
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_build_toolchain_linux_BUILD.gn21
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_cc_BUILD.gn14
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_chromium__strings.grd15
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_generated__resources.grd18
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_google__chrome__strings.grd15
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_chrome__unscaled__resources.grd13
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_image__writer__private_image__writer__private__api.cc14
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_settings__private_prefs__util.cc10
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc18
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.cc47
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.h38
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.cc12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.h12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_features.gni6
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.cc19
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.h17
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_components_crash_content_app_BUILD.gn23
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_components_crash_core_common_BUILD.gn12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_components_download_quarantine_quarantine__linux.cc36
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_components_metrics_system__memory__stats__recorder__linux.cc4
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_components_services_filesystem_file__system__app.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_components_services_font_font__service__app.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_components_storage__monitor_BUILD.gn14
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_components_update__client_update__query__params.cc24
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn14
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_builtin__service__manifests.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__process__host.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__internals.cc4
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_memory_memory__monitor.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_ppapi__plugin__process__host.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_input_input__device__change__observer.cc8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_pepper_pepper__file__io__host.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.cc38
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_jank__monitor.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_watcher.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_service__manager_service__manager__context.cc14
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_storage__partition__impl.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_storage__partition__impl__map.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_webui_shared__resources__data__source.cc15
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_gpu_gpu__main.cc21
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__main__delegate.cc18
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__main__delegate.h20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__packaged__services__manifest.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_child__process__host.h13
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.cc28
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_renderer__preferences.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_media_stream_processed__local__audio__source.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__process__impl.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__thread__impl.cc19
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_content_shell_BUILD.gn12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_device_gamepad_gamepad__provider.cc8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_BUILD.gn21
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__context.cc12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__error.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.cc45
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.h26
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_messaging_message__service.cc21
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_extensions_shell_app_shell__main__delegate.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_external__vk__image__backing.cc29
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_external__vk__image__gl__representation.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.cc21
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__init.cc101
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__memory__buffer__factory.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__watchdog__thread.cc31
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.cc32
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.h42
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__request__context__manager.cc27
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__request__context__manager.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_scopedfd__helper.h14
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.cc45
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.h26
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__factory__linux.cc26
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__linux.cc72
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__buffer__pool__impl.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__client.cc8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_gpu_libyuv__image__processor.cc38
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_gpu_linux_platform__video__frame__utils.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_clients_mojo__video__encode__accelerator.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_interfaces_video__frame__struct__traits.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_services_gpu__mojo__media__client.cc24
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_mojo_public_js_mojo__bindings__resources.grd8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_BUILD.gn17
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_address__tracker__linux.cc245
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_address__tracker__linux.h26
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__gssapi__posix.h12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_http_http__network__session.cc12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_socket_udp__socket__posix.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_socket_unix__domain__client__socket__posix.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_third__party_quic_platform_impl_quic__ip__address__impl.cc10
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_traffic__annotation_network__traffic__annotation.h20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__fetcher.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__fetcher.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_pdf_pdfium_pdfium__engine.cc27
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ppapi_proxy_flash__resource.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_catalog_store.cc10
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_catalog_store.h10
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_content_simple__browser_simple__browser__service.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_content_simple__browser_simple__browser__service.h6
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_device_device__service.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_device_usb_BUILD.gn11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.cc31
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics.h29
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics__linux.cc69
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_service__manager_runner_host_BUILD.gn11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_service__manager_zygote_zygote__linux.cc4
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_services_video__capture_broadcasting__receiver.cc20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_BUILD.gn13
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_inspector_inspector__memory__agent.cc12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_scroll_scrollbar__theme__aura.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.cc6
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.h28
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__description.cc4
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__unique__name__lookup.cc10
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_skia_font__cache__skia.cc28
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_graphics__context__test.cc134
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_highcontrast_highcontrast__classifier.cc79
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_heap_asm_BUILD.gn13
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_heap_stack__frame__depth.cc14
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_image-decoders_bmp_bmp__image__reader.h24
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_image-decoders_webp_webp__image__decoder.cc29
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_BUILD.gn16
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_assertions.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_dtoa_utils.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_stack__util.cc4
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_threading.cc29
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_gcm.c257
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_third__party_fiat_curve25519.c4
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_third__party_fiat_p256.c51
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_nasm_config_config-linux.h29
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxcrt_cfx__datetime.cpp11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxcrt_fx__system.h8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_allocator_partition__allocator_page__allocator.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_allocator_partition__allocator_page__allocator__internals__posix.h38
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_xfa_fgas_font_cfx__fontsourceenum__file.cpp18
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_base_build__config.h51
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_event__fd.h13
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_thread__utils.h24
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_time.h20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_utils.h (renamed from www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_base_utils.h)8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_base_unix__socket.cc12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_protozero_proto__decoder.cc12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_core_tracing__service__impl.cc12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_include_core_SkPostConfig.h15
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_codec_SkCodecPriv.h10
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_opts_SkRasterPipeline__opts.h130
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_ports_SkFontHost__FreeType.cpp77
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_third__party_skcms_src_Transform__inl.h400
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_common__audio_wav__file.cc17
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_BUILD.gn20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_byte__order.h12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_platform__thread__types.cc23
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_string__utils.h17
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_arm__features.c105
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_aura_mus_os__exchange__data__provider__mus.cc24
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_dragdrop_os__exchange__data__provider__factory.cc6
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_ime__engine__handler__interface.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_init_input__method__initializer.cc (renamed from www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_input__method__initializer.cc)4
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.h15
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_font__render__params.h8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_gpu__memory__buffer.h12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_ipc_gfx__param__traits__macros.h20
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_mojo_buffer__types__struct__traits.cc58
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_mojo_buffer__types__struct__traits.h14
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.cc30
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.h31
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__surface__glx.cc14
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_message__center_public_cpp_message__center__constants.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_message__center_views_message__popup__view.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_label.cc12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_views_corewm_tooltip__aura.cc8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_api_api.cc (renamed from www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_api.cc)8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_arm_cpu-arm.cc (renamed from www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_arm_cpu-arm.cc)8
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_external-reference-table.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_log-utils.h11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_ppc_constants-ppc.h30
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_ppc_register-ppc.h12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_test_BUILD.gn12
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_gn_base_files_file__util__posix.cc11
-rw-r--r--www/qt5-webengine/files/patch-src_3rdparty_gn_build_gen.py14
-rw-r--r--www/qt5-webengine/files/patch-src_buildtools_config_linux.pri (renamed from www/qt5-webengine/files/patch-src_core_config_linux.pri)8
-rw-r--r--www/qt5-webengine/files/patch-src_buildtools_config_support.pri10
-rw-r--r--www/qt5-webengine/files/patch-src_core_configure.json28
-rw-r--r--www/qt5-webengine/files/sndio_input.cc185
-rw-r--r--www/qt5-webengine/files/sndio_input.h84
-rw-r--r--www/qt5-webengine/files/sndio_output.cc32
-rw-r--r--www/qt5-webengine/files/sndio_output.h42
-rw-r--r--www/qt5-webengine/pkg-plist4
233 files changed, 2649 insertions, 3396 deletions
diff --git a/www/qt5-webengine/Makefile b/www/qt5-webengine/Makefile
index 552e6b553c50..6fb652367461 100644
--- a/www/qt5-webengine/Makefile
+++ b/www/qt5-webengine/Makefile
@@ -18,7 +18,6 @@
PORTNAME= webengine
DISTVERSION= ${QT5_VERSION}
-PORTREVISION= 3
CATEGORIES= www
PKGNAMEPREFIX= qt5-
@@ -49,7 +48,7 @@ LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \
libwebp.so:graphics/webp
DISTINFO_FILE= ${.CURDIR}/distinfo
-QT5_VERSION= 5.13.2
+QT5_VERSION= 5.14.0
OPTIONS_SINGLE= AUDIO
OPTIONS_SINGLE_AUDIO= ALSA PULSEAUDIO SNDIO
@@ -79,7 +78,7 @@ USE_GL= gl
USE_GNOME= glib20 libxml2 libxslt
USE_QT= core declarative designer gui location network webchannel \
widgets buildtools_build qmake_build printsupport
-USE_XORG= x11 xcb xcomposite xcursor xext xi xorgproto \
+USE_XORG= x11 xcb xcomposite xcursor xdamage xext xfixes xi xorgproto \
xrandr xrender xscrnsaver xtst
USE_LDCONFIG= ${QT_LIBDIR}
@@ -123,7 +122,7 @@ PLIST_SUB+= BE="@comment " LE=""
post-extract:
# Install FreeBSD's freebsd.pri file.
- ${CP} ${FILESDIR}/freebsd.pri ${WRKSRC}/src/core/config/freebsd.pri
+ ${CP} ${FILESDIR}/freebsd.pri ${WRKSRC}/src/buildtools/config/freebsd.pri
post-extract-SNDIO-on:
@cd ${WRKSRC}/src/3rdparty/chromium/media/audio && ${MKDIR} sndio openbsd
diff --git a/www/qt5-webengine/distinfo b/www/qt5-webengine/distinfo
index f65850638803..334390a14bc9 100644
--- a/www/qt5-webengine/distinfo
+++ b/www/qt5-webengine/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1572640408
-SHA256 (KDE/Qt/5.13.2/qtwebengine-everywhere-src-5.13.2.tar.xz) = adcf56b5de6f34744bba2307b696fc75611884f4270e87dfa760d6e99dd711bb
-SIZE (KDE/Qt/5.13.2/qtwebengine-everywhere-src-5.13.2.tar.xz) = 255593964
+TIMESTAMP = 1578321366
+SHA256 (KDE/Qt/5.14.0/qtwebengine-everywhere-src-5.14.0.tar.xz) = 74f8c11cc318612c8d9dc87cf791badb1efe7080c10d8b3ed5843b249a942d32
+SIZE (KDE/Qt/5.14.0/qtwebengine-everywhere-src-5.14.0.tar.xz) = 241565016
diff --git a/www/qt5-webengine/files/patch-clang b/www/qt5-webengine/files/patch-clang
index b27e3425550c..7ac47c2f9150 100644
--- a/www/qt5-webengine/files/patch-clang
+++ b/www/qt5-webengine/files/patch-clang
@@ -38,18 +38,6 @@
EXPECT_CALL(callback_, OnError()).Times(2);
---- src/3rdparty/chromium/third_party/libjingle_xmpp/task_runner/taskrunner.cc.orig 2019-03-07 09:23:57 UTC
-+++ src/3rdparty/chromium/third_party/libjingle_xmpp/task_runner/taskrunner.cc
-@@ -80,7 +80,7 @@ void TaskRunner::InternalRunTasks(bool in_destructor)
- std::vector<Task *>::iterator it;
- it = std::remove(tasks_.begin(),
- tasks_.end(),
-- reinterpret_cast<Task *>(NULL));
-+ static_cast<Task *>(NULL));
-
- tasks_.erase(it, tasks_.end());
- tasks_running_ = false;
-
--- src/3rdparty/chromium/third_party/sfntly/src/cpp/src/sfntly/table/core/cmap_table.cc.orig 2018-11-13 18:25:11 UTC
+++ src/3rdparty/chromium/third_party/sfntly/src/cpp/src/sfntly/table/core/cmap_table.cc
@@ -439,7 +439,7 @@ CMapTable::CMapFormat0::Builder::Builder(
diff --git a/www/qt5-webengine/files/patch-config.tests_khr_khr.pro b/www/qt5-webengine/files/patch-config.tests_khr_khr.pro
deleted file mode 100644
index 4a778d3d9a47..000000000000
--- a/www/qt5-webengine/files/patch-config.tests_khr_khr.pro
+++ /dev/null
@@ -1,8 +0,0 @@
---- config.tests/khr/khr.pro.orig 2018-11-27 04:10:38 UTC
-+++ config.tests/khr/khr.pro
-@@ -3,4 +3,4 @@
-
- CONFIG-=qt
-
--linux:SOURCES += khr.cpp
-+unix:SOURCES += khr.cpp
diff --git a/www/qt5-webengine/files/patch-config.tests_snappy_snappy.pro b/www/qt5-webengine/files/patch-config.tests_snappy_snappy.pro
deleted file mode 100644
index 8762cf1a6e8d..000000000000
--- a/www/qt5-webengine/files/patch-config.tests_snappy_snappy.pro
+++ /dev/null
@@ -1,7 +0,0 @@
---- config.tests/snappy/snappy.pro.orig 2018-11-27 04:10:38 UTC
-+++ config.tests/snappy/snappy.pro
-@@ -1,3 +1,3 @@
--linux:SOURCES += snappy.cpp
-+unix:SOURCES += snappy.cpp
- LIBS += -lsnappy
- CONFIG -= qt
diff --git a/www/qt5-webengine/files/patch-configure.pri b/www/qt5-webengine/files/patch-configure.pri
new file mode 100644
index 000000000000..8d0718d1389e
--- /dev/null
+++ b/www/qt5-webengine/files/patch-configure.pri
@@ -0,0 +1,30 @@
+--- configure.pri.orig 2019-12-03 07:18:02 UTC
++++ configure.pri
+@@ -114,7 +114,7 @@ defineTest(qtwebengine_platformError) {
+ defineTest(qtConfTest_detectPlatform) {
+ QT_FOR_CONFIG += gui-private
+
+- !linux:!win32:!macos {
++ !linux:!win32:!macos:!unix: {
+ qtwebengine_platformError("Unknown platform. Qt WebEngine only supports Linux, Windows, and macOS.")
+ } else {
+ linux:qtwebengine_isLinuxPlatformSupported() {
+@@ -126,6 +126,9 @@ defineTest(qtConfTest_detectPlatform) {
+ macos:qtwebengine_isMacOsPlatformSupported() {
+ $${1}.platform = "macos"
+ }
++ unix:qtwebengine_isLinuxPlatformSupported() {
++ $${1}.platform = "linux"
++ }
+ }
+
+ !isEmpty(platformError) {
+@@ -163,7 +166,7 @@ defineTest(qtConfTest_detectNinja) {
+ !isEmpty(ninja) {
+ qtLog("Found ninja from path: $$ninja")
+ qtRunLoggedCommand("$$ninja --version", version)|return(false)
+- contains(version, "1.[7-9].*"): return(true)
++ contains(version, "1\.([7-9]|1[0-9])\..*"): return(true)
+ qtLog("Ninja version too old")
+ }
+ qtLog("Building own ninja")
diff --git a/www/qt5-webengine/files/patch-mkspecs_features_configure.prf b/www/qt5-webengine/files/patch-mkspecs_features_configure.prf
deleted file mode 100644
index 07474776cf3b..000000000000
--- a/www/qt5-webengine/files/patch-mkspecs_features_configure.prf
+++ /dev/null
@@ -1,34 +0,0 @@
---- mkspecs/features/configure.prf.orig 2019-10-23 10:30:33 UTC
-+++ mkspecs/features/configure.prf
-@@ -26,7 +26,7 @@ defineTest(runConfigure) {
- return(false)
- }
-
-- linux:contains(QT_CONFIG,no-pkg-config) {
-+ unix:contains(QT_CONFIG,no-pkg-config) {
- skipBuild("pkg-config is required")
- return(false)
- }
-@@ -68,17 +68,17 @@ defineTest(runConfigure) {
- return(false);
- }
-
-- linux {
-+ unix {
-
- !qtConfig(webengine-host-pkg-config) {
- skipBuild("Host pkg-config is required")
- return(false)
- }
-
-- !qtConfig(webengine-system-glibc) {
-- skipBuild("A suitable version >= 2.27 of libc could not be found.")
-- return(false)
-- }
-+ #!qtConfig(webengine-system-glibc) {
-+ # skipBuild("A suitable version >= 2.27 of libc could not be found.")
-+ # return(false)
-+ #}
-
- QT_FOR_CONFIG += gui-private
-
diff --git a/www/qt5-webengine/files/patch-mkspecs_features_functions.prf b/www/qt5-webengine/files/patch-mkspecs_features_functions.prf
index 3b2619581de5..b84e35f09607 100644
--- a/www/qt5-webengine/files/patch-mkspecs_features_functions.prf
+++ b/www/qt5-webengine/files/patch-mkspecs_features_functions.prf
@@ -1,17 +1,14 @@
-Include the freebsd.pri file provided by the port, to pass FreeBSD specific
-settings to gn.
-
---- mkspecs/features/functions.prf.orig 2019-05-24 09:01:39 UTC
+--- mkspecs/features/functions.prf.orig 2019-12-03 07:18:02 UTC
+++ mkspecs/features/functions.prf
-@@ -82,6 +82,7 @@ defineReplace(gnArgs) {
- linux: include($$QTWEBENGINE_ROOT/src/core/config/linux.pri)
- macos: include($$QTWEBENGINE_ROOT/src/core/config/mac_osx.pri)
- win32: include($$QTWEBENGINE_ROOT/src/core/config/windows.pri)
-+ freebsd: include($$QTWEBENGINE_ROOT/src/core/config/freebsd.pri)
+@@ -75,6 +75,7 @@ defineReplace(gnArgs) {
+ linux: include($$QTWEBENGINE_ROOT/src/buildtools/config/linux.pri)
+ macos: include($$QTWEBENGINE_ROOT/src/buildtools/config/mac_osx.pri)
+ win32: include($$QTWEBENGINE_ROOT/src/buildtools/config/windows.pri)
++ freebsd: include($$QTWEBENGINE_ROOT/src/buildtools/config/freebsd.pri)
isEmpty(gn_args): error(No gn_args found please make sure you have valid configuration.)
return($$gn_args)
}
-@@ -94,6 +95,7 @@ defineReplace(gnArch) {
+@@ -87,6 +88,7 @@ defineReplace(gnArch) {
contains(qtArch, "arm64"): return(arm64)
contains(qtArch, "mips"): return(mipsel)
contains(qtArch, "mips64"): return(mips64el)
@@ -19,7 +16,7 @@ settings to gn.
return(unknown)
}
-@@ -101,6 +103,7 @@ defineReplace(gnOS) {
+@@ -94,6 +96,7 @@ defineReplace(gnOS) {
macos: return(mac)
win32: return(win)
linux: return(linux)
diff --git a/www/qt5-webengine/files/patch-mkspecs_features_platform.prf b/www/qt5-webengine/files/patch-mkspecs_features_platform.prf
deleted file mode 100644
index 9e6614c3a0e8..000000000000
--- a/www/qt5-webengine/files/patch-mkspecs_features_platform.prf
+++ /dev/null
@@ -1,19 +0,0 @@
---- mkspecs/features/platform.prf.orig 2019-05-24 09:01:39 UTC
-+++ mkspecs/features/platform.prf
-@@ -11,7 +11,7 @@ defineTest(isQtMinimum) {
-
- defineTest(isPlatformSupported) {
- QT_FOR_CONFIG += gui-private
-- linux {
-+ unix {
- if(!gcc:!clang)|intel_icc {
- skipBuild("Qt WebEngine on Linux requires clang or GCC.")
- return(false)
-@@ -84,6 +84,7 @@ defineTest(isArchSupported) {
- contains(QT_ARCH, "arm")|contains(QT_ARCH, "arm64"): return(true)
- contains(QT_ARCH, "mips"): return(true)
- # contains(QT_ARCH, "mips64"): return(true)
-+ contains(QT_ARCH, "power64"): return(true)
-
- skipBuild("QtWebEngine can only be built for x86, x86-64, ARM, Aarch64, and MIPSel architectures.")
- return(false)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_BUILD.gn
index a39424299df5..534dfbbcec2c 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_BUILD.gn
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_BUILD.gn
@@ -1,7 +1,7 @@
---- src/3rdparty/chromium/BUILD.gn.orig 2019-03-01 17:04:22 UTC
+--- src/3rdparty/chromium/BUILD.gn.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/BUILD.gn
-@@ -366,7 +366,7 @@ group("gn_all") {
- [ "//third_party/android_crazy_linker:android_crazy_linker_zip_fuzzer" ]
+@@ -400,7 +400,7 @@ group("gn_all") {
+ ]
}
- if (is_linux || is_android) {
@@ -9,7 +9,7 @@
deps += [
"//third_party/breakpad:breakpad_unittests",
"//third_party/breakpad:core-2-minidump",
-@@ -408,8 +408,6 @@ group("gn_all") {
+@@ -441,8 +441,6 @@ group("gn_all") {
"//net:disk_cache_memory_test",
"//net:quic_client",
"//net:quic_server",
@@ -18,10 +18,10 @@
"//testing:empty_main",
]
-@@ -466,10 +464,6 @@ group("gn_all") {
+@@ -497,10 +495,6 @@ group("gn_all") {
+ "//chrome/test:load_library_perf_tests",
+ "//chrome/test:sync_performance_tests",
"//chrome/test/chromedriver:chromedriver",
- "//chrome/test/chromedriver:chromedriver_tests",
- "//components/sync:run_sync_testserver",
- "//courgette:courgette",
- "//courgette:courgette_fuzz",
- "//courgette:courgette_minimal_tool",
@@ -29,7 +29,7 @@
"//media/cast:generate_barcode_video",
"//media/cast:generate_timecode_audio",
"//net:crash_cache",
-@@ -536,10 +530,6 @@ group("gn_all") {
+@@ -567,10 +561,6 @@ group("gn_all") {
"//mojo:mojo_perftests",
"//services/service_manager/public/cpp",
"//testing/gmock:gmock_main",
@@ -40,7 +40,7 @@
]
if (!is_android) {
-@@ -614,7 +604,7 @@ group("gn_all") {
+@@ -644,7 +634,7 @@ group("gn_all") {
host_os == "win" && !use_qt) {
deps += [ "//chrome/test/mini_installer:mini_installer_tests" ]
}
@@ -49,7 +49,15 @@
deps += [ "//third_party/breakpad:symupload($host_toolchain)" ]
}
-@@ -853,7 +843,6 @@ if (is_chromeos) {
+@@ -783,7 +773,6 @@ group("gn_all") {
+ "//chrome/browser/vr:vr_common_perftests",
+ "//chrome/browser/vr:vr_common_unittests",
+ "//chrome/browser/vr:vr_pixeltests",
+- "//tools/perf/contrib/vr_benchmarks:vr_perf_tests",
+ ]
+ if (is_desktop_linux && use_ozone) {
+ deps += [ "//chrome/browser/vr/testapp:vr_testapp" ]
+@@ -902,7 +891,6 @@ if (is_chromeos) {
"//ppapi/examples/video_decode",
"//sandbox/linux:chrome_sandbox",
"//sandbox/linux:sandbox_linux_unittests",
@@ -57,7 +65,7 @@
# Blocked on https://github.com/catapult-project/catapult/issues/2297
#"//third_party/catapult/telemetry:bitmaptools",
-@@ -958,7 +947,7 @@ if (!is_ios && !use_qt) {
+@@ -1070,7 +1058,7 @@ if (!is_ios && !use_qt) {
]
}
@@ -66,7 +74,7 @@
data_deps +=
[ "//third_party/breakpad:minidump_stackwalk($host_toolchain)" ]
}
-@@ -967,7 +956,7 @@ if (!is_ios && !use_qt) {
+@@ -1079,7 +1067,7 @@ if (!is_ios && !use_qt) {
data_deps += [ "//third_party/breakpad:dump_syms($host_toolchain)" ]
}
@@ -75,7 +83,7 @@
data_deps += [ "//third_party/breakpad:dump_syms($host_toolchain)" ]
}
-@@ -1091,9 +1080,6 @@ group("chromium_builder_perf") {
+@@ -1221,9 +1209,6 @@ group("chromium_builder_perf") {
if (is_win) {
data_deps += [ "//chrome/installer/mini_installer:mini_installer" ]
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_allocator__shim.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_allocator__shim.cc
index 9b7ace842c70..1e77cff619cf 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_allocator__shim.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_allocator__shim.cc
@@ -1,11 +1,11 @@
---- src/3rdparty/chromium/base/allocator/allocator_shim.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/base/allocator/allocator_shim.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/base/allocator/allocator_shim.cc
-@@ -69,7 +69,7 @@ inline const allocator::AllocatorDispatch* GetChainHea
+@@ -70,7 +70,7 @@ inline const base::allocator::AllocatorDispatch* GetCh
// Unfortunately due to that bug NoBarrier_Load() is mistakenly fully
// barriered on Linux+Clang, and that causes visible perf regressons.
- return reinterpret_cast<const allocator::AllocatorDispatch*>(
+ return reinterpret_cast<const base::allocator::AllocatorDispatch*>(
-#if defined(OS_LINUX) && defined(__clang__)
+#if (defined(OS_BSD) || defined(OS_LINUX)) && defined(__clang__)
- *static_cast<const volatile subtle::AtomicWord*>(&g_chain_head)
+ *static_cast<const volatile base::subtle::AtomicWord*>(&g_chain_head)
#else
- subtle::NoBarrier_Load(&g_chain_head)
+ base::subtle::NoBarrier_Load(&g_chain_head)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_allocator__shim__default__dispatch__to__glibc.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_allocator__shim__default__dispatch__to__glibc.cc
index 9a1e2c51932c..b1f7257651b2 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_allocator__shim__default__dispatch__to__glibc.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_allocator__shim__default__dispatch__to__glibc.cc
@@ -1,9 +1,9 @@
---- src/3rdparty/chromium/base/allocator/allocator_shim_default_dispatch_to_glibc.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/base/allocator/allocator_shim_default_dispatch_to_glibc.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/base/allocator/allocator_shim_default_dispatch_to_glibc.cc
-@@ -4,18 +4,28 @@
-
+@@ -5,18 +5,28 @@
#include "base/allocator/allocator_shim.h"
+ #include <dlfcn.h>
-#include <malloc.h>
+#include <stdio.h>
+#include <stdlib.h>
@@ -22,13 +22,13 @@
-void __libc_free(void* ptr);
+void* __malloc(size_t size);
+void* __calloc(size_t n, size_t size);
-+void* __realloc(void* address, size_t size);
++void* __realloc(void* address, size_t len);
+void* __memalign(size_t alignment, size_t size) {
+ void *ret;
+ if (__posix_memalign(&ret, alignment, size) != 0) {
-+ return nullptr;
++ return nullptr;
+ } else {
-+ return ret;
++ return ret;
+ }
+}
+int __posix_memalign(void **ptr, size_t alignment, size_t size);
@@ -36,7 +36,7 @@
} // extern "C"
namespace {
-@@ -23,32 +33,32 @@ namespace {
+@@ -24,32 +34,32 @@ namespace {
using base::allocator::AllocatorDispatch;
void* GlibcMalloc(const AllocatorDispatch*, size_t size, void* context) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator.cc
deleted file mode 100644
index 96cb2a426043..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator.cc
-@@ -115,7 +115,7 @@ void* AllocPages(void* address,
- uintptr_t align_base_mask = ~align_offset_mask;
- DCHECK(!(reinterpret_cast<uintptr_t>(address) & align_offset_mask));
-
--#if defined(OS_LINUX) && defined(ARCH_CPU_64_BITS)
-+#if (defined(OS_BSD) || defined(OS_LINUX)) && defined(ARCH_CPU_64_BITS)
- // On 64 bit Linux, we may need to adjust the address space limit for
- // guarded allocations.
- if (length >= kMinimumGuardedMemorySize) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__internals__posix.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__internals__posix.h
index b12a1d206e72..b952a67abb10 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__internals__posix.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_allocator_partition__allocator_page__allocator__internals__posix.h
@@ -1,7 +1,7 @@
---- src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator_internals_posix.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator_internals_posix.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/base/allocator/partition_allocator/page_allocator_internals_posix.h
-@@ -14,7 +14,7 @@
- #if defined(OS_MACOSX)
+@@ -16,7 +16,7 @@
+
#include <mach/mach.h>
#endif
-#if defined(OS_LINUX)
@@ -9,30 +9,3 @@
#include <sys/resource.h>
#include <algorithm>
-@@ -48,7 +48,7 @@ int GetAccessFlags(PageAccessibilityConfiguration acce
- }
- }
-
--#if defined(OS_LINUX) && defined(ARCH_CPU_64_BITS)
-+#if (defined(OS_BSD) || defined(OS_LINUX)) && defined(ARCH_CPU_64_BITS)
-
- // Multiple guarded memory regions may exceed the process address space limit.
- // This function will raise or lower the limit by |amount|.
-@@ -68,7 +68,7 @@ bool AdjustAddressSpaceLimit(int64_t amount) {
- // schemes that reduce that to 4 GiB.
- constexpr size_t kMinimumGuardedMemorySize = 1ULL << 32; // 4 GiB
-
--#endif // defined(OS_LINUX) && defined(ARCH_CPU_64_BITS)
-+#endif // (defined(OS_BSD) || defined(OS_LINUX)) && defined(ARCH_CPU_64_BITS)
-
- void* SystemAllocPagesInternal(void* hint,
- size_t length,
-@@ -134,7 +134,7 @@ void SetSystemPagesAccessInternal(
- void FreePagesInternal(void* address, size_t length) {
- CHECK(!munmap(address, length));
-
--#if defined(OS_LINUX) && defined(ARCH_CPU_64_BITS)
-+#if (defined(OS_BSD) || defined(OS_LINUX)) && defined(ARCH_CPU_64_BITS)
- // Restore the address space limit.
- if (length >= kMinimumGuardedMemorySize) {
- CHECK(AdjustAddressSpaceLimit(-base::checked_cast<int64_t>(length)));
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base__switches.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base__switches.cc
new file mode 100644
index 000000000000..63225c12f7d9
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base__switches.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/base/base_switches.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/base_switches.cc
+@@ -114,7 +114,7 @@ const char kWaitForDebugger[] = "wait-for-debugger";
+ const char kDisableUsbKeyboardDetect[] = "disable-usb-keyboard-detect";
+ #endif
+
+-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
++#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
+ // The /dev/shm partition is too small in certain VM environments, causing
+ // Chrome to fail or crash (see http://crbug.com/715363). Use this flag to
+ // work-around this issue (a temporary directory will always be used to create
+@@ -135,7 +135,7 @@ const char kEnableCrashReporterForTesting[] =
+ const char kEnableReachedCodeProfiler[] = "enable-reached-code-profiler";
+ #endif
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ // Controls whether or not retired instruction counts are surfaced for threads
+ // in trace events on Linux.
+ //
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base__switches.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base__switches.h
new file mode 100644
index 000000000000..df66c09b5d0c
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_base__switches.h
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/base/base_switches.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/base_switches.h
+@@ -37,7 +37,7 @@ extern const char kWaitForDebugger[];
+ extern const char kDisableUsbKeyboardDetect[];
+ #endif
+
+-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
++#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
+ extern const char kDisableDevShmUsage[];
+ #endif
+
+@@ -50,7 +50,7 @@ extern const char kEnableReachedCodeProfiler[];
+ extern const char kOrderfileMemoryOptimization[];
+ #endif
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ extern const char kEnableThreadInstructionCount[];
+ #endif
+
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_cpu.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_cpu.cc
new file mode 100644
index 000000000000..e5fa1f7efec0
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_cpu.cc
@@ -0,0 +1,38 @@
+--- src/3rdparty/chromium/base/cpu.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/cpu.cc
+@@ -15,7 +15,7 @@
+ #include "base/stl_util.h"
+ #include "build/build_config.h"
+
+-#if defined(ARCH_CPU_ARM_FAMILY) && (defined(OS_ANDROID) || defined(OS_LINUX))
++#if defined(ARCH_CPU_ARM_FAMILY) && (defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_BSD))
+ #include "base/files/file_util.h"
+ #endif
+
+@@ -98,7 +98,7 @@ uint64_t xgetbv(uint32_t xcr) {
+
+ #endif // ARCH_CPU_X86_FAMILY
+
+-#if defined(ARCH_CPU_ARM_FAMILY) && (defined(OS_ANDROID) || defined(OS_LINUX))
++#if defined(ARCH_CPU_ARM_FAMILY) && (defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_BSD))
+ std::string* CpuInfoBrand() {
+ static std::string* brand = []() {
+ // This function finds the value from /proc/cpuinfo under the key "model
+@@ -128,7 +128,7 @@ std::string* CpuInfoBrand() {
+ return brand;
+ }
+ #endif // defined(ARCH_CPU_ARM_FAMILY) && (defined(OS_ANDROID) ||
+- // defined(OS_LINUX))
++ // defined(OS_LINUX) || defined(OS_BSD))
+
+ } // namespace
+
+@@ -252,7 +252,7 @@ void CPU::Initialize() {
+ }
+ }
+ #elif defined(ARCH_CPU_ARM_FAMILY)
+-#if (defined(OS_ANDROID) || defined(OS_LINUX))
++#if (defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_BSD))
+ cpu_brand_ = *CpuInfoBrand();
+ #elif defined(OS_WIN)
+ // Windows makes high-resolution thread timing information available in
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader.cc
new file mode 100644
index 000000000000..6ac7376c3b82
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader.cc
@@ -0,0 +1,18 @@
+--- src/3rdparty/chromium/base/debug/elf_reader.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/debug/elf_reader.cc
+@@ -83,6 +83,7 @@ size_t ReadElfBuildId(const void* elf_mapped_base,
+ reinterpret_cast<const Nhdr*>(elf_base + header.p_vaddr);
+ bool found = false;
+ while (current_note < section_end) {
++#if !defined(OS_BSD)
+ if (current_note->n_type == NT_GNU_BUILD_ID) {
+ const char* note_name =
+ reinterpret_cast<const char*>(current_note) + sizeof(Nhdr);
+@@ -92,6 +93,7 @@ size_t ReadElfBuildId(const void* elf_mapped_base,
+ break;
+ }
+ }
++#endif
+
+ current_note = reinterpret_cast<const Nhdr*>(
+ reinterpret_cast<const char*>(current_note) + sizeof(Nhdr) +
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader__linux.cc
deleted file mode 100644
index 3108874b6852..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_elf__reader__linux.cc
+++ /dev/null
@@ -1,13 +0,0 @@
---- src/3rdparty/chromium/base/debug/elf_reader_linux.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/base/debug/elf_reader_linux.cc
-@@ -41,8 +41,10 @@ Optional<std::string> ElfSegmentBuildIDNoteAsString(co
- const void* section_end = segment.data() + segment.size_bytes();
- const Nhdr* note_header = reinterpret_cast<const Nhdr*>(segment.data());
- while (note_header < section_end) {
-+#if !defined(OS_BSD)
- if (note_header->n_type == NT_GNU_BUILD_ID)
- break;
-+#endif
- note_header = reinterpret_cast<const Nhdr*>(
- reinterpret_cast<const char*>(note_header) + sizeof(Nhdr) +
- bits::Align(note_header->n_namesz, 4) +
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_stack__trace.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_stack__trace.h
index 6db7055e8e32..de7d3ef309b1 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_stack__trace.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_debug_stack__trace.h
@@ -1,9 +1,9 @@
---- src/3rdparty/chromium/base/debug/stack_trace.h.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/base/debug/stack_trace.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/base/debug/stack_trace.h
-@@ -16,6 +16,7 @@
- #include "build/build_config.h"
-
- #if defined(OS_POSIX)
+@@ -19,6 +19,7 @@
+ #if !defined(OS_NACL)
+ #include <signal.h>
+ #endif
+#include <sys/stdint.h>
#include <unistd.h>
#endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher.cc
new file mode 100644
index 000000000000..8da0d5d9bb66
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_file__path__watcher.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/base/files/file_path_watcher.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/files/file_path_watcher.cc
+@@ -20,7 +20,7 @@ FilePathWatcher::~FilePathWatcher() {
+ // static
+ bool FilePathWatcher::RecursiveWatchAvailable() {
+ #if (defined(OS_MACOSX) && !defined(OS_IOS)) || defined(OS_WIN) || \
+- defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_AIX)
++ defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_AIX) || defined(OS_BSD)
+ return true;
+ #else
+ // FSEvents isn't available on iOS.
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_memory__mapped__file__posix.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_memory__mapped__file__posix.cc
deleted file mode 100644
index 463cf2debc94..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_memory__mapped__file__posix.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/base/files/memory_mapped_file_posix.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/base/files/memory_mapped_file_posix.cc
-@@ -110,6 +110,8 @@ bool MemoryMappedFile::MapFileRegionToMemory(
- // Only Android API>=21 supports the fallocate call. Older versions need
- // to manually extend the file by writing zeros at block intervals.
- do_manual_extension = true;
-+#elif defined(OS_BSD)
-+ do_manual_extension = true;
- #elif defined(OS_MACOSX)
- // MacOS doesn't support fallocate even though their new APFS filesystem
- // does support sparse files. It does, however, have the functionality
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_scoped__file.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_scoped__file.cc
new file mode 100644
index 000000000000..85c3a240ec4e
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_files_scoped__file.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/base/files/scoped_file.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/files/scoped_file.cc
+@@ -30,7 +30,7 @@ void ScopedFDCloseTraits::Free(int fd) {
+ // a single open directory would bypass the entire security model.
+ int ret = IGNORE_EINTR(close(fd));
+
+-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_FUCHSIA) || \
++#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_FUCHSIA) || defined(OS_BSD) || \
+ defined(OS_ANDROID)
+ // NB: Some file descriptors can return errors from close() e.g. network
+ // filesystems such as NFS and Linux input devices. On Linux, macOS, and
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_sha1.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_hash_sha1.cc
index a60da5d76ee7..8186c151ec81 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_sha1.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_hash_sha1.cc
@@ -1,5 +1,5 @@
---- src/3rdparty/chromium/base/sha1.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/base/sha1.cc
+--- src/3rdparty/chromium/base/hash/sha1.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/hash/sha1.cc
@@ -110,8 +110,10 @@ void SecureHashAlgorithm::Final() {
Pad();
Process();
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_i18n_icu__util.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_i18n_icu__util.cc
index e159f1cf4383..4d7ee99e9f95 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_i18n_icu__util.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_i18n_icu__util.cc
@@ -1,5 +1,5 @@
---- src/3rdparty/chromium/base/i18n/icu_util.cc.orig 2019-05-23 14:39:34.000000000 +0200
-+++ src/3rdparty/chromium/base/i18n/icu_util.cc 2019-10-27 22:58:57.501541000 +0100
+--- src/3rdparty/chromium/base/i18n/icu_util.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/i18n/icu_util.cc
@@ -20,7 +20,7 @@
#include "build/build_config.h"
#include "third_party/icu/source/common/unicode/putil.h"
@@ -9,7 +9,7 @@
#include "third_party/icu/source/i18n/unicode/timezone.h"
#endif
-@@ -75,7 +75,11 @@
+@@ -68,7 +68,11 @@ wchar_t g_debug_icu_pf_filename[_MAX_PATH];
// No need to change the filename in multiple places (gyp files, windows
// build pkg configurations, etc). 'l' stands for Little Endian.
// This variable is exported through the header file.
@@ -21,7 +21,7 @@
#if defined(OS_ANDROID)
const char kAndroidAssetsIcuDataFileName[] = "assets/icudtl.dat";
#endif
-@@ -320,7 +324,7 @@
+@@ -290,7 +294,7 @@ bool InitializeICU() {
// TODO(jungshik): Some callers do not care about tz at all. If necessary,
// add a boolean argument to this function to init'd the default tz only
// when requested.
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region.h
new file mode 100644
index 000000000000..63e4a74a1b09
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region.h
@@ -0,0 +1,29 @@
+--- src/3rdparty/chromium/base/memory/platform_shared_memory_region.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/memory/platform_shared_memory_region.h
+@@ -28,7 +28,7 @@
+ #include "base/files/scoped_file.h"
+ #endif
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ namespace content {
+ class SandboxIPCHandler;
+ }
+@@ -122,7 +122,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion {
+ kMaxValue = GET_SHMEM_TEMP_DIR_FAILURE
+ };
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ // Structure to limit access to executable region creation.
+ struct ExecutableRegion {
+ private:
+@@ -276,7 +276,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion {
+ CheckPlatformHandlePermissionsCorrespondToMode);
+ static PlatformSharedMemoryRegion Create(Mode mode,
+ size_t size
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ ,
+ bool executable = false
+ #endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region__posix.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region__posix.cc
new file mode 100644
index 000000000000..f90fe21fa47a
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region__posix.cc
@@ -0,0 +1,38 @@
+--- src/3rdparty/chromium/base/memory/platform_shared_memory_region_posix.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/memory/platform_shared_memory_region_posix.cc
+@@ -76,7 +76,7 @@ FDPair ScopedFDPair::get() const {
+ return {fd.get(), readonly_fd.get()};
+ }
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ // static
+ ScopedFD PlatformSharedMemoryRegion::ExecutableRegion::CreateFD(size_t size) {
+ PlatformSharedMemoryRegion region =
+@@ -85,7 +85,7 @@ ScopedFD PlatformSharedMemoryRegion::ExecutableRegion:
+ return region.PassPlatformHandle().fd;
+ return ScopedFD();
+ }
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ // static
+ PlatformSharedMemoryRegion PlatformSharedMemoryRegion::Take(
+@@ -224,7 +224,7 @@ bool PlatformSharedMemoryRegion::MapAtInternal(off_t o
+ // static
+ PlatformSharedMemoryRegion PlatformSharedMemoryRegion::Create(Mode mode,
+ size_t size
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ ,
+ bool executable
+ #endif
+@@ -255,7 +255,7 @@ PlatformSharedMemoryRegion PlatformSharedMemoryRegion:
+ // flag.
+ FilePath directory;
+ if (!GetShmemTempDir(
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ executable,
+ #else
+ false /* executable */,
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_protected__memory__posix.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_protected__memory__posix.cc
new file mode 100644
index 000000000000..f92921f33751
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_memory_protected__memory__posix.cc
@@ -0,0 +1,31 @@
+--- src/3rdparty/chromium/base/memory/protected_memory_posix.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/memory/protected_memory_posix.cc
+@@ -8,9 +8,9 @@
+ #include <sys/mman.h>
+ #include <unistd.h>
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ #include <sys/resource.h>
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ #if defined(OS_MACOSX) && !defined(OS_IOS)
+ #include <mach/mach.h>
+@@ -44,7 +44,7 @@ bool AutoWritableMemory::SetMemoryReadOnly(void* start
+ return SetMemory(start, end, PROT_READ);
+ }
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ void AssertMemoryIsReadOnly(const void* ptr) {
+ #if DCHECK_IS_ON()
+ const uintptr_t page_mask = ~(base::GetPageSize() - 1);
+@@ -74,6 +74,6 @@ void AssertMemoryIsReadOnly(const void* ptr) {
+ DCHECK_EQ(region_info.protection, VM_PROT_READ);
+ #endif // DCHECK_IS_ON()
+ }
+-#endif // defined(OS_LINUX) || (defined(OS_MACOSX) && !defined(OS_IOS))
++#endif // defined(OS_LINUX) || (defined(OS_MACOSX) && !defined(OS_IOS)) || defined(OS_BSD)
+
+ } // namespace base
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_numerics_safe__math__shared__impl.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_numerics_safe__math__shared__impl.h
index caebc600e5ef..62c4313ff1e4 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_numerics_safe__math__shared__impl.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_numerics_safe__math__shared__impl.h
@@ -1,13 +1,12 @@
---- src/3rdparty/chromium/base/numerics/safe_math_shared_impl.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/base/numerics/safe_math_shared_impl.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/base/numerics/safe_math_shared_impl.h
-@@ -19,9 +19,7 @@
-
+@@ -23,8 +23,7 @@
// Where available use builtin math overflow support on Clang and GCC.
- #if !defined(__native_client__) && \
-- ((defined(__clang__) && \
-- ((__clang_major__ > 3) || \
-- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \
-+ ((defined(__clang__) && (__clang_major__ > 6)) || \
- (defined(__GNUC__) && __GNUC__ >= 5))
+ #elif !defined(__native_client__) && \
+ ((defined(__clang__) && \
+- ((__clang_major__ > 3) || \
+- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \
++ (__clang_major__ > 6)) || \
+ (defined(__GNUC__) && __GNUC__ >= 5))
#include "base/numerics/safe_math_clang_gcc_impl.h"
#define BASE_HAS_OPTIMIZED_SAFE_MATH (1)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.cc
index 52810d8dba1a..5d2d57979c0a 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.cc
@@ -1,5 +1,23 @@
---- src/3rdparty/chromium/base/process/process_metrics.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/base/process/process_metrics.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/base/process/process_metrics.cc
+@@ -57,7 +57,7 @@ SystemMetrics SystemMetrics::Sample() {
+ SystemMetrics system_metrics;
+
+ system_metrics.committed_memory_ = GetSystemCommitCharge();
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ GetSystemMemoryInfo(&system_metrics.memory_info_);
+ GetVmStatInfo(&system_metrics.vmstat_info_);
+ GetSystemDiskInfo(&system_metrics.disk_info_);
+@@ -75,7 +75,7 @@ std::unique_ptr<Value> SystemMetrics::ToValue() const
+ std::unique_ptr<DictionaryValue> res(new DictionaryValue());
+
+ res->SetIntKey("committed_memory", static_cast<int>(committed_memory_));
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ std::unique_ptr<DictionaryValue> meminfo = memory_info_.ToValue();
+ std::unique_ptr<DictionaryValue> vmstat = vmstat_info_.ToValue();
+ meminfo->MergeDictionary(vmstat.get());
@@ -126,7 +126,7 @@ double ProcessMetrics::GetPlatformIndependentCPUUsage(
}
#endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.h
index b910bd165583..2df8b171a04a 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics.h
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/base/process/process_metrics.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/base/process/process_metrics.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/base/process/process_metrics.h
@@ -41,7 +41,7 @@ namespace base {
// Full declaration is in process_metrics_iocounters.h.
@@ -27,7 +27,7 @@
// Resident Set Size is a Linux/Android specific memory concept. Do not
// attempt to extend this to other platforms.
BASE_EXPORT size_t GetResidentSetSize() const;
-@@ -199,14 +199,14 @@ class BASE_EXPORT ProcessMetrics {
+@@ -168,14 +168,14 @@ class BASE_EXPORT ProcessMetrics {
int GetOpenFdSoftLimit() const;
#endif // defined(OS_POSIX)
@@ -44,7 +44,7 @@
// Returns total memory usage of malloc.
size_t GetMallocUsage();
-@@ -218,7 +218,7 @@ class BASE_EXPORT ProcessMetrics {
+@@ -187,7 +187,7 @@ class BASE_EXPORT ProcessMetrics {
ProcessMetrics(ProcessHandle process, PortProvider* port_provider);
#endif // !defined(OS_MACOSX) || defined(OS_IOS)
@@ -53,7 +53,7 @@
int CalculateIdleWakeupsPerSecond(uint64_t absolute_idle_wakeups);
#endif
#if defined(OS_MACOSX)
-@@ -247,7 +247,7 @@ class BASE_EXPORT ProcessMetrics {
+@@ -216,7 +216,7 @@ class BASE_EXPORT ProcessMetrics {
// Number of bytes transferred to/from disk in bytes.
uint64_t last_cumulative_disk_usage_ = 0;
@@ -62,16 +62,16 @@
// Same thing for idle wakeups.
TimeTicks last_idle_wakeups_time_;
uint64_t last_absolute_idle_wakeups_;
-@@ -293,7 +293,7 @@ BASE_EXPORT void IncreaseFdLimitTo(unsigned int max_de
+@@ -264,7 +264,7 @@ BASE_EXPORT size_t GetHandleLimit();
+ BASE_EXPORT void IncreaseFdLimitTo(unsigned int max_descriptors);
#endif // defined(OS_POSIX)
- #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \
-- defined(OS_ANDROID) || defined(OS_AIX) || defined(OS_FUCHSIA)
-+ defined(OS_ANDROID) || defined(OS_AIX) || defined(OS_FUCHSIA) || defined(OS_BSD)
+-#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \
++#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) || \
+ defined(OS_ANDROID) || defined(OS_AIX) || defined(OS_FUCHSIA)
// Data about system-wide memory consumption. Values are in KB. Available on
// Windows, Mac, Linux, Android and Chrome OS.
- //
-@@ -326,7 +326,7 @@ struct BASE_EXPORT SystemMemoryInfoKB {
+@@ -298,7 +298,7 @@ struct BASE_EXPORT SystemMemoryInfoKB {
int avail_phys = 0;
#endif
@@ -80,33 +80,52 @@
// This provides an estimate of available memory as described here:
// https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=34e431b0ae398fc54ea69ff85ec700722c9da773
// NOTE: this is ONLY valid in kernels 3.14 and up. Its value will always
-@@ -341,7 +341,7 @@ struct BASE_EXPORT SystemMemoryInfoKB {
+@@ -312,7 +312,7 @@ struct BASE_EXPORT SystemMemoryInfoKB {
+ int swap_free = 0;
#endif
- #if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_AIX) || \
-- defined(OS_FUCHSIA)
-+ defined(OS_FUCHSIA) || defined(OS_BSD)
+-#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_AIX) || \
++#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_AIX) || defined(OS_BSD) || \
+ defined(OS_FUCHSIA)
int buffers = 0;
int cached = 0;
- int active_anon = 0;
-@@ -351,7 +351,7 @@ struct BASE_EXPORT SystemMemoryInfoKB {
+@@ -322,7 +322,7 @@ struct BASE_EXPORT SystemMemoryInfoKB {
+ int inactive_file = 0;
int dirty = 0;
int reclaimable = 0;
- #endif // defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_AIX) ||
-- // defined(OS_FUCHSIA)
-+ // defined(OS_FUCHSIA) || defined(OS_BSD)
+-#endif // defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_AIX) ||
++#endif // defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_AIX) || defined(OS_BSD) ||
+ // defined(OS_FUCHSIA)
#if defined(OS_CHROMEOS)
- int shmem = 0;
-@@ -377,9 +377,9 @@ struct BASE_EXPORT SystemMemoryInfoKB {
+@@ -348,10 +348,10 @@ struct BASE_EXPORT SystemMemoryInfoKB {
+ // Exposed for memory debugging widget.
BASE_EXPORT bool GetSystemMemoryInfo(SystemMemoryInfoKB* meminfo);
- #endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) ||
-- // defined(OS_ANDROID) || defined(OS_AIX) || defined(OS_FUCHSIA)
-+ // defined(OS_ANDROID) || defined(OS_AIX) || defined(OS_FUCHSIA) || defined(OS_BSD)
+-#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) ||
++#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
+ // defined(OS_ANDROID) || defined(OS_AIX) || defined(OS_FUCHSIA)
-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_AIX)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_AIX) || defined(OS_BSD)
// Parse the data found in /proc/<pid>/stat and return the sum of the
// CPU-related ticks. Returns -1 on parse error.
// Exposed for testing.
+@@ -424,7 +424,7 @@ BASE_EXPORT bool GetSystemDiskInfo(SystemDiskInfo* dis
+ // Returns the amount of time spent in user space since boot across all CPUs.
+ BASE_EXPORT TimeDelta GetUserCpuTimeSinceBoot();
+
+-#endif // defined(OS_LINUX) || defined(OS_ANDROID)
++#endif // defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+
+ #if defined(OS_CHROMEOS)
+ // Data from files in directory /sys/block/zram0 about ZRAM usage.
+@@ -519,7 +519,7 @@ class BASE_EXPORT SystemMetrics {
+ FRIEND_TEST_ALL_PREFIXES(SystemMetricsTest, SystemMetrics);
+
+ size_t committed_memory_;
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ SystemMemoryInfoKB memory_info_;
+ VmStatInfo vmstat_info_;
+ SystemDiskInfo disk_info_;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__freebsd.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__freebsd.cc
index 3a570b9ff184..7fa8c5cd382b 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__freebsd.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_process_process__metrics__freebsd.cc
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/base/process/process_metrics_freebsd.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/base/process/process_metrics_freebsd.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/base/process/process_metrics_freebsd.cc
@@ -5,6 +5,7 @@
#include "base/process/process_metrics.h"
@@ -8,7 +8,7 @@
#include <sys/sysctl.h>
#include <sys/user.h>
#include <unistd.h>
-@@ -14,11 +15,15 @@
+@@ -14,11 +15,29 @@
#include "base/process/process_metrics_iocounters.h"
#include "base/stl_util.h"
@@ -18,7 +18,21 @@
+#include <libutil.h>
+
namespace base {
++namespace {
++int GetPageShift() {
++ int pagesize = getpagesize();
++ int pageshift = 0;
++
++ while (pagesize > 1) {
++ pageshift++;
++ pagesize >>= 1;
++ }
++
++ return pageshift;
++}
++}
++
ProcessMetrics::ProcessMetrics(ProcessHandle process)
- : process_(process),
- last_cpu_(0) {}
@@ -26,7 +40,7 @@
// static
std::unique_ptr<ProcessMetrics> ProcessMetrics::CreateProcessMetrics(
-@@ -69,4 +74,93 @@ size_t GetSystemCommitCharge() {
+@@ -69,4 +88,216 @@ size_t GetSystemCommitCharge() {
return mem_total - (mem_free*pagesize) - (mem_inactive*pagesize);
}
@@ -110,13 +124,136 @@
+ return total_count;
+}
+
++size_t ProcessMetrics::GetResidentSetSize() const {
++ kvm_t *kd = kvm_open(nullptr, "/dev/null", nullptr, O_RDONLY, "kvm_open");
++
++ if (kd == nullptr)
++ return 0;
++
++ struct kinfo_proc *pp;
++ int nproc;
++
++ if ((pp = kvm_getprocs(kd, KERN_PROC_PID, process_, &nproc)) == nullptr) {
++ kvm_close(kd);
++ return 0;
++ }
++
++ size_t rss;
++
++ if (nproc > 0) {
++ rss = pp->ki_rssize << GetPageShift();
++ } else {
++ rss = 0;
++ }
++
++ kvm_close(kd);
++ return rss;
++}
++
+uint64_t ProcessMetrics::GetVmSwapBytes() const {
-+ NOTIMPLEMENTED();
-+ return 0;
++ kvm_t *kd = kvm_open(nullptr, "/dev/null", nullptr, O_RDONLY, "kvm_open");
++
++ if (kd == nullptr)
++ return 0;
++
++ struct kinfo_proc *pp;
++ int nproc;
++
++ if ((pp = kvm_getprocs(kd, KERN_PROC_PID, process_, &nproc)) == nullptr) {
++ kvm_close(kd);
++ return 0;
++ }
++
++ size_t swrss;
++
++ if (nproc > 0) {
++ swrss = pp->ki_swrss > pp->ki_rssize
++ ? (pp->ki_swrss - pp->ki_rssize) << GetPageShift()
++ : 0;
++ } else {
++ swrss = 0;
++ }
++
++ kvm_close(kd);
++ return swrss;
+}
+
+int ProcessMetrics::GetIdleWakeupsPerSecond() {
+ NOTIMPLEMENTED();
+ return 0;
+}
++
++bool GetSystemDiskInfo(SystemDiskInfo* diskinfo) {
++ NOTIMPLEMENTED();
++ return false;
++}
++
++bool GetVmStatInfo(VmStatInfo* vmstat) {
++ NOTIMPLEMENTED();
++ return false;
++}
++
++SystemDiskInfo::SystemDiskInfo() {
++ reads = 0;
++ reads_merged = 0;
++ sectors_read = 0;
++ read_time = 0;
++ writes = 0;
++ writes_merged = 0;
++ sectors_written = 0;
++ write_time = 0;
++ io = 0;
++ io_time = 0;
++ weighted_io_time = 0;
++}
++
++SystemDiskInfo::SystemDiskInfo(const SystemDiskInfo& other) = default;
++
++std::unique_ptr<Value> SystemDiskInfo::ToValue() const {
++ auto res = std::make_unique<DictionaryValue>();
++
++ // Write out uint64_t variables as doubles.
++ // Note: this may discard some precision, but for JS there's no other option.
++ res->SetDouble("reads", static_cast<double>(reads));
++ res->SetDouble("reads_merged", static_cast<double>(reads_merged));
++ res->SetDouble("sectors_read", static_cast<double>(sectors_read));
++ res->SetDouble("read_time", static_cast<double>(read_time));
++ res->SetDouble("writes", static_cast<double>(writes));
++ res->SetDouble("writes_merged", static_cast<double>(writes_merged));
++ res->SetDouble("sectors_written", static_cast<double>(sectors_written));
++ res->SetDouble("write_time", static_cast<double>(write_time));
++ res->SetDouble("io", static_cast<double>(io));
++ res->SetDouble("io_time", static_cast<double>(io_time));
++ res->SetDouble("weighted_io_time", static_cast<double>(weighted_io_time));
++
++ return std::move(res);
++}
++
++std::unique_ptr<DictionaryValue> SystemMemoryInfoKB::ToValue() const {
++ auto res = std::make_unique<DictionaryValue>();
++ res->SetIntKey("total", total);
++ res->SetIntKey("free", free);
++ res->SetIntKey("available", available);
++ res->SetIntKey("buffers", buffers);
++ res->SetIntKey("cached", cached);
++ res->SetIntKey("active_anon", active_anon);
++ res->SetIntKey("inactive_anon", inactive_anon);
++ res->SetIntKey("active_file", active_file);
++ res->SetIntKey("inactive_file", inactive_file);
++ res->SetIntKey("swap_total", swap_total);
++ res->SetIntKey("swap_free", swap_free);
++ res->SetIntKey("swap_used", swap_total - swap_free);
++ res->SetIntKey("dirty", dirty);
++ res->SetIntKey("reclaimable", reclaimable);
++
++ return res;
++}
++
++std::unique_ptr<DictionaryValue> VmStatInfo::ToValue() const {
++ auto res = std::make_unique<DictionaryValue>();
++ res->SetIntKey("pswpin", pswpin);
++ res->SetIntKey("pswpout", pswpout);
++ res->SetIntKey("pgmajfault", pgmajfault);
++ return res;
++}
} // namespace base
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_sampling__heap__profiler_sampling__heap__profiler.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_sampling__heap__profiler_sampling__heap__profiler.cc
new file mode 100644
index 000000000000..3cd3787ceddf
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_sampling__heap__profiler_sampling__heap__profiler.cc
@@ -0,0 +1,24 @@
+--- src/3rdparty/chromium/base/sampling_heap_profiler/sampling_heap_profiler.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/sampling_heap_profiler/sampling_heap_profiler.cc
+@@ -29,6 +29,10 @@
+ #include <sys/prctl.h>
+ #endif
+
++#if defined(OS_BSD)
++#include <pthread_np.h>
++#endif
++
+ #if defined(OS_ANDROID) && BUILDFLAG(CAN_UNWIND_WITH_CFI_TABLE) && \
+ defined(OFFICIAL_BUILD)
+ #include "base/trace_event/cfi_backtrace_android.h"
+@@ -64,6 +68,10 @@ const char* GetAndLeakThreadName() {
+ #elif defined(OS_MACOSX)
+ int err = pthread_getname_np(pthread_self(), name, kBufferLen);
+ if (err == 0 && *name != '\0')
++ return strdup(name);
++#elif defined(OS_BSD) && __FreeBSD__ >= 12
++ pthread_get_name_np(pthread_self(), name, kBufferLen);
++ if (*name != '\0')
+ return strdup(name);
+ #endif // defined(OS_LINUX) || defined(OS_ANDROID)
+
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_syslog__logging.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_syslog__logging.cc
new file mode 100644
index 000000000000..3d6b2fa82ae4
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_syslog__logging.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/base/syslog_logging.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/syslog_logging.cc
+@@ -11,7 +11,7 @@
+ #include "base/callback_helpers.h"
+ #include "base/debug/stack_trace.h"
+ #include "base/win/win_util.h"
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_BSD)
+ // <syslog.h> defines LOG_INFO, LOG_WARNING macros that could conflict with
+ // base::LOG_INFO, base::LOG_WARNING.
+ #include <syslog.h>
+@@ -110,7 +110,7 @@ EventLogMessage::~EventLogMessage() {
+
+ if (user_sid != nullptr)
+ ::LocalFree(user_sid);
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_BSD)
+ const char kEventSource[] = "chrome";
+ openlog(kEventSource, LOG_NOWAIT | LOG_PID, LOG_USER);
+ // We can't use the defined names for the logging severity from syslog.h
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.h
new file mode 100644
index 000000000000..6ca8ef772b5a
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info.h
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/base/system/sys_info.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/base/system/sys_info.h
+@@ -192,7 +192,7 @@ class BASE_EXPORT SysInfo {
+ static bool IsLowEndDeviceImpl();
+ static HardwareInfo GetHardwareInfoSync();
+
+-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_AIX)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_AIX) || defined(OS_BSD)
+ static int64_t AmountOfAvailablePhysicalMemory(
+ const SystemMemoryInfoKB& meminfo);
+ #endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__freebsd.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__freebsd.cc
index bdd11ba035b7..f6c7d3df059e 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__freebsd.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__freebsd.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/base/system/sys_info_freebsd.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/base/system/sys_info_freebsd.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/base/system/sys_info_freebsd.cc
-@@ -13,26 +13,58 @@
+@@ -13,26 +13,46 @@
namespace base {
int64_t SysInfo::AmountOfPhysicalMemoryImpl() {
@@ -45,8 +45,8 @@
}
- return static_cast<uint64_t>(limit);
+ return static_cast<int64_t>((pgfree + pginact + pgcache) * page_size);
-+}
-+
+ }
+
+// static
+std::string SysInfo::CPUModelName() {
+ int mib[] = { CTL_HW, HW_MODEL };
@@ -56,16 +56,4 @@
+ return name;
+ return std::string();
+}
-+
-+int SysInfo::NumberOfProcessors() {
-+ int mib[] = { CTL_HW, HW_NCPU };
-+ int ncpu;
-+ size_t size = sizeof(ncpu);
-+ if (sysctl(mib, base::size(mib), &ncpu, &size, NULL, 0) == -1) {
-+ NOTREACHED();
-+ return 1;
-+ }
-+ return ncpu;
- }
-
} // namespace base
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__posix.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__posix.cc
index 422d934916fb..c696bede9c3e 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__posix.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_base_system_sys__info__posix.cc
@@ -1,40 +1,11 @@
---- src/3rdparty/chromium/base/system/sys_info_posix.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/base/system/sys_info_posix.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/base/system/sys_info_posix.cc
-@@ -38,7 +38,7 @@
-
- namespace {
-
--#if !defined(OS_OPENBSD) && !defined(OS_FUCHSIA)
-+#if !defined(OS_BSD) && !defined(OS_FUCHSIA)
- int NumberOfProcessors() {
- // sysconf returns the number of "logical" (not "physical") processors on both
- // Mac and Linux. So we get the number of max available "logical" processors.
-@@ -64,7 +64,7 @@ int NumberOfProcessors() {
-
- base::LazyInstance<base::internal::LazySysInfoValue<int, NumberOfProcessors>>::
- Leaky g_lazy_number_of_processors = LAZY_INSTANCE_INITIALIZER;
--#endif // !defined(OS_OPENBSD) && !defined(OS_FUCHSIA)
-+#endif // !defined(OS_BSD) && !defined(OS_FUCHSIA)
-
- #if !defined(OS_FUCHSIA)
- int64_t AmountOfVirtualMemory() {
-@@ -132,7 +132,7 @@ bool GetDiskSpaceInfo(const base::FilePath& path,
-
- namespace base {
-
--#if !defined(OS_OPENBSD) && !defined(OS_FUCHSIA)
-+#if !defined(OS_BSD) && !defined(OS_FUCHSIA)
- int SysInfo::NumberOfProcessors() {
- return g_lazy_number_of_processors.Get().value();
- }
-@@ -225,7 +225,9 @@ std::string SysInfo::OperatingSystemArchitecture() {
+@@ -220,6 +220,8 @@ std::string SysInfo::OperatingSystemArchitecture() {
arch = "x86";
} else if (arch == "amd64") {
arch = "x86_64";
-- } else if (std::string(info.sysname) == "AIX") {
+ } else if (arch == "arm64") {
+ arch = "aarch64";
-+ } else if (arch == "powerpc" || arch == "powerpc64") {
+ } else if (std::string(info.sysname) == "AIX") {
arch = "ppc64";
}
- return arch;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_allocator.gni b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_allocator.gni
deleted file mode 100644
index e45247dbcaa9..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_allocator.gni
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/3rdparty/chromium/build/config/allocator.gni.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/build/config/allocator.gni
-@@ -6,7 +6,7 @@ import("//build/config/sanitizers/sanitizers.gni")
-
- # Temporarily disable tcmalloc on arm64 linux to get rid of compilation errors.
- if (is_android || is_mac || is_ios || is_asan || is_lsan || is_tsan ||
-- is_msan || is_win || is_fuchsia || (is_linux && target_cpu == "arm64")) {
-+ is_msan || is_win || is_fuchsia || (is_linux && target_cpu == "arm64") || is_bsd) {
- _default_allocator = "none"
- } else {
- _default_allocator = "tcmalloc"
-@@ -17,7 +17,7 @@ if (is_android || is_mac || is_ios || is_asan || is_ls
- # against the debug CRT with "is_nacl=false".
- if ((is_linux || is_android || is_mac ||
- (is_win && !is_shared && !is_debug)) && !is_asan && !is_lsan &&
-- !is_tsan && !is_msan) {
-+ !is_tsan && !is_msan && !is_bsd) {
- _default_use_allocator_shim = true
- } else {
- _default_use_allocator_shim = false
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn
index 2e0b090599f4..f9aa5649b5ca 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/build/config/compiler/BUILD.gn.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/build/config/compiler/BUILD.gn.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/build/config/compiler/BUILD.gn
-@@ -56,7 +56,7 @@ declare_args() {
+@@ -60,7 +60,7 @@ declare_args() {
# only two architectures that are currently checked in). Turn this off when
# you are using a custom toolchain and need to control -B in cflags.
linux_use_bundled_binutils =
@@ -9,7 +9,7 @@
(current_cpu == "x64" || current_cpu == "x86")
binutils_path = rebase_path("//third_party/binutils/Linux_x64/Release/bin",
root_build_dir)
-@@ -281,7 +281,7 @@ config("compiler") {
+@@ -301,7 +301,7 @@ config("compiler") {
# Linker warnings.
if (fatal_linker_warnings && !(is_chromeos && current_cpu == "arm") &&
!(is_android && use_order_profiling) && !is_mac && !is_ios &&
@@ -18,7 +18,7 @@
# TODO(jochen): Enable this on chromeos on arm. http://crbug.com/356580
# TODO(lizeb,pasko): Fix link errors when linking with order_profiling=1
# crbug.com/485542
-@@ -412,7 +412,7 @@ config("compiler") {
+@@ -407,7 +407,7 @@ config("compiler") {
# Compiler instrumentation can introduce dependencies in DSOs to symbols in
# the executable they are loaded into, so they are unresolved at link-time.
@@ -27,30 +27,7 @@
ldflags += [
"-Wl,-z,defs",
"-Wl,--as-needed",
-@@ -520,7 +520,7 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang && !use_qt) {
-+ if (is_clang && !is_nacl && !use_xcode_clang && !use_qt && !is_bsd) {
- cflags += [
- # TODO(hans): Remove this once Clang generates better optimized debug info
- # by default. https://crbug.com/765793
-@@ -814,11 +814,11 @@ config("compiler_cpu_abi") {
- ]
- }
- } else if (current_cpu == "arm") {
-- if (is_clang && !is_android && !is_nacl) {
-+ if (is_clang && !is_android && !is_nacl && !is_bsd) {
- cflags += [ "--target=arm-linux-gnueabihf" ]
- ldflags += [ "--target=arm-linux-gnueabihf" ]
- }
-- if (!is_nacl) {
-+ if (!is_nacl && !is_bsd) {
- cflags += [
- "-march=$arm_arch",
- "-mfloat-abi=$arm_float_abi",
-@@ -828,7 +828,7 @@ config("compiler_cpu_abi") {
+@@ -786,7 +786,7 @@ config("compiler_cpu_abi") {
cflags += [ "-mtune=$arm_tune" ]
}
} else if (current_cpu == "arm64") {
@@ -59,7 +36,16 @@
cflags += [ "--target=aarch64-linux-gnu" ]
ldflags += [ "--target=aarch64-linux-gnu" ]
}
-@@ -1522,7 +1522,7 @@ config("default_warnings") {
+@@ -1147,7 +1147,7 @@ config("compiler_deterministic") {
+ "-Xclang",
+ ".",
+ ]
+- if (!is_win) {
++ if (!is_win && !is_bsd) {
+ # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
+ asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
+ }
+@@ -1553,7 +1553,7 @@ config("default_warnings") {
cflags += [ "-Wno-nonportable-include-path" ]
}
@@ -68,7 +54,7 @@
# Flags NaCl (Clang 3.7) and Xcode 9.2 (Clang clang-900.0.39.2) do not
# recognize.
cflags += [
-@@ -1722,7 +1722,7 @@ config("thin_archive") {
+@@ -1761,7 +1761,7 @@ config("thin_archive") {
# Mac and iOS use the mac-specific "libtool" command, not ar, which doesn't
# have a "thin archive" mode (it does accept -T, but it means truncating
# archive names to 16 characters, which is not what we want).
@@ -77,16 +63,16 @@
arflags = [ "-T" ]
} else if (is_win && use_lld) {
arflags = [ "/llvmlibthin" ]
-@@ -2314,7 +2314,7 @@ config("symbols") {
- # flag, so we can use use -g1 for pnacl and nacl-clang compiles.
- # gcc nacl is is_nacl && !is_clang, pnacl and nacl-clang are && is_clang.
- if (!is_nacl || is_clang) {
-- cflags += [ "-g2" ]
-+ cflags += [ "-g0" ]
- }
+@@ -2356,7 +2356,7 @@ config("symbols") {
+ # flag, so we can use use -g1 for pnacl and nacl-clang compiles.
+ # gcc nacl is is_nacl && !is_clang, pnacl and nacl-clang are && is_clang.
+ if (!is_nacl || is_clang) {
+- cflags += [ "-g2" ]
++ cflags += [ "-g0" ]
}
+
if (use_debug_fission && !is_nacl && !is_android) {
-@@ -2335,7 +2335,7 @@ config("symbols") {
+@@ -2377,7 +2377,7 @@ config("symbols") {
# DWARF info may be corrupt; offsets in a range list entry are in different
# sections" there. Maybe just a bug in nacl_switch_32.S.
if (!is_mac && !is_ios && !is_nacl && current_cpu != "x86" &&
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_linux_pkg-config.py b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_linux_pkg-config.py
index 9da27eddc795..0138d6962ccd 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_linux_pkg-config.py
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_linux_pkg-config.py
@@ -1,7 +1,7 @@
---- src/3rdparty/chromium/build/config/linux/pkg-config.py.orig 2017-01-26 00:49:07 UTC
+--- src/3rdparty/chromium/build/config/linux/pkg-config.py.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/build/config/linux/pkg-config.py
-@@ -57,8 +57,12 @@ def SetConfigPath(options):
- print "You must specify an architecture via -a if using a sysroot."
+@@ -59,8 +59,12 @@ def SetConfigPath(options):
+ print("You must specify an architecture via -a if using a sysroot.")
sys.exit(1)
- libdir = sysroot + '/usr/' + options.system_libdir + '/pkgconfig'
@@ -15,12 +15,12 @@
os.environ['PKG_CONFIG_LIBDIR'] = libdir
return libdir
-@@ -107,7 +111,7 @@ def main():
+@@ -109,7 +113,7 @@ def main():
# If this is run on non-Linux platforms, just return nothing and indicate
# success. This allows us to "kind of emulate" a Linux build from other
# platforms.
- if "linux" not in sys.platform:
+ if "bsd" not in sys.platform:
- print "[[],[],[],[],[]]"
+ print("[[],[],[],[],[]]")
return 0
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_toolchain_linux_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_toolchain_linux_BUILD.gn
index e063d00d1d04..09a6817379fb 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_toolchain_linux_BUILD.gn
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_toolchain_linux_BUILD.gn
@@ -1,21 +1,6 @@
---- src/3rdparty/chromium/build/toolchain/linux/BUILD.gn.orig 2019-05-23 14:39:34.000000000 +0200
-+++ src/3rdparty/chromium/build/toolchain/linux/BUILD.gn 2019-10-29 02:47:24.026830000 +0100
-@@ -5,6 +5,14 @@
- import("//build/config/sysroot.gni")
- import("//build/toolchain/gcc_toolchain.gni")
-
-+clang_toolchain("clang_ppc64") {
-+ enable_linker_map = true
-+ toolchain_args = {
-+ current_cpu = "ppc64"
-+ current_os = "linux"
-+ }
-+}
-+
- clang_toolchain("clang_arm") {
- toolprefix = "arm-linux-gnueabihf-"
- toolchain_args = {
-@@ -14,7 +22,6 @@
+--- src/3rdparty/chromium/build/toolchain/linux/BUILD.gn.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/build/toolchain/linux/BUILD.gn
+@@ -22,7 +22,6 @@ clang_toolchain("clang_arm") {
}
clang_toolchain("clang_arm64") {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_cc_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_cc_BUILD.gn
index 9189a8e10292..b55c8cd7276e 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_cc_BUILD.gn
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_cc_BUILD.gn
@@ -1,15 +1,15 @@
---- src/3rdparty/chromium/cc/BUILD.gn.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/cc/BUILD.gn.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/cc/BUILD.gn
-@@ -548,7 +548,7 @@ cc_test_static_library("test_support") {
- "//ui/gl:test_support",
- "//ui/latency",
- ]
+@@ -568,7 +568,7 @@ cc_test_static_library("test_support") {
+ if (enable_vulkan) {
+ deps += [ "//gpu/vulkan/init" ]
+ }
- if (!is_android) {
+ if (!is_android && !is_bsd) {
data_deps = [
"//third_party/mesa_headers",
]
-@@ -746,9 +746,6 @@ cc_test("cc_unittests") {
+@@ -773,9 +773,6 @@ cc_test("cc_unittests") {
"//ui/gfx/geometry",
"//ui/gl",
"//ui/gl:test_support",
@@ -17,5 +17,5 @@
- data_deps = [
- "//third_party/mesa_headers",
]
- }
+ if (enable_vulkan) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_chromium__strings.grd b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_chromium__strings.grd
index 20d578f2f8d0..74fb1d628045 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_chromium__strings.grd
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_chromium__strings.grd
@@ -1,6 +1,15 @@
---- src/3rdparty/chromium/chrome/app/chromium_strings.grd.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/chrome/app/chromium_strings.grd.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/app/chromium_strings.grd
-@@ -809,7 +809,7 @@ Signing in anyway will merge Chromium information like
+@@ -690,7 +690,7 @@ Signing in anyway will merge Chromium information like
+ </if>
+
+ <!-- about:browser-switch strings -->
+- <if expr="is_win or is_macosx or (is_linux and not is_chromeos)">
++ <if expr="is_win or is_macosx or (is_posix and not is_chromeos)">
+ <message name="IDS_ABOUT_BROWSER_SWITCH_DESCRIPTION_UNKNOWN_BROWSER" desc="Description shown while waiting for an alternative browser to open, when the browser name is not auto-detected">
+ Your system administrator has configured Chromium to open an alternative browser to access <ph name="TARGET_URL_HOSTNAME">$1<ex>example.com</ex></ph>.
+ </message>
+@@ -821,7 +821,7 @@ Signing in anyway will merge Chromium information like
</message>
<!-- ProcessSingleton -->
@@ -9,7 +18,7 @@
<message name="IDS_PROFILE_IN_USE_POSIX" desc="Message shown when the browser cannot start because the profile is in use on a different host.">
The profile appears to be in use by another Chromium process (<ph name="PROCESS_ID">$1<ex>12345</ex></ph>) on another computer (<ph name="HOST_NAME">$2<ex>example.com</ex></ph>). Chromium has locked the profile so that it doesn't get corrupted. If you are sure no other processes are using this profile, you can unlock the profile and relaunch Chromium.
</message>
-@@ -1057,7 +1057,7 @@ Please check your email at <ph name="ACCOUNT_EMAIL">$2
+@@ -1080,7 +1080,7 @@ Please check your email at <ph name="ACCOUNT_EMAIL">$2
</message>
<!-- Plugin Placeholders -->
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_generated__resources.grd b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_generated__resources.grd
index 15d328e12dd5..eaab6f22d965 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_generated__resources.grd
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_generated__resources.grd
@@ -1,15 +1,15 @@
---- src/3rdparty/chromium/chrome/app/generated_resources.grd.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/chrome/app/generated_resources.grd.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/app/generated_resources.grd
-@@ -5339,7 +5339,7 @@ the Bookmarks menu.">
- </message>
+@@ -4796,7 +4796,7 @@ Keep your key file in a safe place. You will need it t
</if>
-- <if expr="is_win or (is_linux and not chromeos)">
-+ <if expr="is_win or (is_posix and not chromeos)">
- <message name="IDS_QUIT_ACCELERATOR_TUTORIAL" desc="Instructions for how the user should quit using keyboard shortcuts.">
- Press |<ph name="ACCELERATOR1">$1<ex>Ctrl</ex></ph>|+|<ph name="ACCELERATOR2">$2<ex>Shift</ex></ph>| followed by |<ph name="ACCELERATOR3">$3<ex>Q</ex></ph>| to exit
+ <!-- chrome://browser-switch strings -->
+- <if expr="is_win or is_macosx or (is_linux and not is_chromeos)">
++ <if expr="is_win or is_macosx or (is_posix and not is_chromeos)">
+ <message name="IDS_ABOUT_BROWSER_SWITCH_TITLE" desc="about:browser-switch page title">
+ Legacy Browser Support
</message>
-@@ -6160,7 +6160,7 @@ the Bookmarks menu.">
+@@ -6373,7 +6373,7 @@ the Bookmarks menu.">
Google Pay
</message>
@@ -18,7 +18,7 @@
<message name="IDS_SHOW_WINDOW_DECORATIONS" desc="The label of a radio button in the options dialog for using the system title bar and borders.">
Use system title bar and borders
</message>
-@@ -6946,7 +6946,7 @@ Please help our engineers fix this problem. Tell us wh
+@@ -7222,7 +7222,7 @@ Please help our engineers fix this problem. Tell us wh
Set as default
</message>
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_google__chrome__strings.grd b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_google__chrome__strings.grd
index cea17e61b2e2..7d2059a13154 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_google__chrome__strings.grd
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_google__chrome__strings.grd
@@ -1,6 +1,15 @@
---- src/3rdparty/chromium/chrome/app/google_chrome_strings.grd.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/chrome/app/google_chrome_strings.grd.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/app/google_chrome_strings.grd
-@@ -820,7 +820,7 @@ Signing in anyway will merge Chrome information like b
+@@ -702,7 +702,7 @@ Signing in anyway will merge Chrome information like b
+ </if>
+
+ <!-- about:browser-switch strings -->
+- <if expr="is_win or is_macosx or (is_linux and not is_chromeos)">
++ <if expr="is_win or is_macosx or (is_posix and not is_chromeos)">
+ <message name="IDS_ABOUT_BROWSER_SWITCH_DESCRIPTION_UNKNOWN_BROWSER" desc="Description shown while waiting for an alternative browser to open, when the browser name is not auto-detected">
+ Your system administrator has configured Google Chrome to open an alternative browser to access <ph name="TARGET_URL_HOSTNAME">$1<ex>example.com</ex></ph>.
+ </message>
+@@ -833,7 +833,7 @@ Signing in anyway will merge Chrome information like b
</message>
<!-- ProcessSingleton -->
@@ -9,7 +18,7 @@
<message name="IDS_PROFILE_IN_USE_POSIX" desc="Message shown when the browser cannot start because the profile is in use on a different host.">
The profile appears to be in use by another Google Chrome process (<ph name="PROCESS_ID">$1<ex>12345</ex></ph>) on another computer (<ph name="HOST_NAME">$2<ex>example.com</ex></ph>). Chrome has locked the profile so that it doesn't get corrupted. If you are sure no other processes are using this profile, you can unlock the profile and relaunch Chrome.
</message>
-@@ -1075,7 +1075,7 @@ Please check your email at <ph name="ACCOUNT_EMAIL">$2
+@@ -1099,7 +1099,7 @@ Please check your email at <ph name="ACCOUNT_EMAIL">$2
</message>
<!-- Plugin Placeholders -->
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_chrome__unscaled__resources.grd b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_chrome__unscaled__resources.grd
index 2d41b9b2395b..719712ea20a1 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_chrome__unscaled__resources.grd
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_app_theme_chrome__unscaled__resources.grd
@@ -1,6 +1,15 @@
---- src/3rdparty/chromium/chrome/app/theme/chrome_unscaled_resources.grd.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/chrome/app/theme/chrome_unscaled_resources.grd.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/app/theme/chrome_unscaled_resources.grd
-@@ -88,7 +88,7 @@
+@@ -18,7 +18,7 @@
+ <include name="IDR_PRODUCT_LOGO_64" file="google_chrome/product_logo_64.png" type="BINDATA" />
+ <include name="IDR_PRODUCT_LOGO_128" file="google_chrome/product_logo_128.png" type="BINDATA" />
+ <include name="IDR_PRODUCT_LOGO_256" file="google_chrome/product_logo_256.png" type="BINDATA" />
+- <if expr="is_linux">
++ <if expr="is_posix">
+ <include name="IDR_PRODUCT_LOGO_128_BETA" file="google_chrome/product_logo_128_beta.png" type="BINDATA" />
+ <include name="IDR_PRODUCT_LOGO_128_DEV" file="google_chrome/product_logo_128_dev.png" type="BINDATA" />
+ </if>
+@@ -109,7 +109,7 @@
<include name="IDR_PROFILE_AVATAR_2X_25" file="default_200_percent/common/profile_avatar_sun_cloud.png" type="BINDATA" />
<include name="IDR_PROFILE_AVATAR_2X_26" file="default_200_percent/common/profile_avatar_placeholder.png" type="BINDATA" />
</if>
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_image__writer__private_image__writer__private__api.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_image__writer__private_image__writer__private__api.cc
deleted file mode 100644
index 13b558960423..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_image__writer__private_image__writer__private__api.cc
+++ /dev/null
@@ -1,14 +0,0 @@
---- src/3rdparty/chromium/chrome/browser/extensions/api/image_writer_private/image_writer_private_api.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/chrome/browser/extensions/api/image_writer_private/image_writer_private_api.cc
-@@ -137,9 +137,11 @@ ImageWriterPrivateListRemovableStorageDevicesFunction:
- }
-
- bool ImageWriterPrivateListRemovableStorageDevicesFunction::RunAsync() {
-+#if !defined(OS_FREEBSD)
- RemovableStorageProvider::GetAllDevices(base::BindOnce(
- &ImageWriterPrivateListRemovableStorageDevicesFunction::OnDeviceListReady,
- this));
-+#endif
- return true;
- }
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_settings__private_prefs__util.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_settings__private_prefs__util.cc
index ae671bfd9c19..43e8dab7405d 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_settings__private_prefs__util.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_extensions_api_settings__private_prefs__util.cc
@@ -1,15 +1,15 @@
---- src/3rdparty/chromium/chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/browser/extensions/api/settings_private/prefs_util.cc
-@@ -127,7 +127,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetWhitelist
- settings_api::PrefType::PREF_TYPE_BOOLEAN;
+@@ -153,7 +153,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetWhitelist
(*s_whitelist)[bookmarks::prefs::kShowBookmarkBar] =
settings_api::PrefType::PREF_TYPE_BOOLEAN;
+
-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS)
++#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
(*s_whitelist)[::prefs::kUseCustomChromeFrame] =
settings_api::PrefType::PREF_TYPE_BOOLEAN;
#endif
-@@ -137,7 +137,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetWhitelist
+@@ -163,7 +163,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetWhitelist
// Appearance settings.
(*s_whitelist)[::prefs::kCurrentThemeID] =
settings_api::PrefType::PREF_TYPE_STRING;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc
index 834ab3d9bff1..30d3fdaf7d31 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc
@@ -1,7 +1,7 @@
---- src/3rdparty/chromium/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
-@@ -188,11 +188,11 @@
- #include "chrome/browser/ui/webui/welcome_win10_ui.h"
+@@ -206,11 +206,11 @@
+ #include "chrome/browser/ui/webui/set_as_default_browser_ui_win.h"
#endif
-#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
@@ -14,7 +14,7 @@
#include "chrome/browser/ui/webui/sandbox_internals_ui.h"
#endif
-@@ -320,7 +320,7 @@ bool IsAboutUI(const GURL& url) {
+@@ -323,7 +323,7 @@ bool IsAboutUI(const GURL& url) {
#if !defined(OS_ANDROID)
|| url.host_piece() == chrome::kChromeUITermsHost
#endif
@@ -23,7 +23,7 @@
|| url.host_piece() == chrome::kChromeUILinuxProxyConfigHost
#endif
#if defined(OS_CHROMEOS)
-@@ -569,7 +569,7 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* we
+@@ -638,7 +638,7 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* we
if (url.host_piece() == chrome::kChromeUINaClHost)
return &NewWebUI<NaClUI>;
#endif
@@ -32,7 +32,7 @@
if (url.host_piece() == chrome::kChromeUITabModalConfirmDialogHost)
return &NewWebUI<ConstrainedWebDialogUI>;
#endif
-@@ -630,12 +630,12 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* we
+@@ -681,17 +681,17 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* we
return &NewWebUI<CastUI>;
}
#endif
@@ -47,3 +47,9 @@
if (url.host_piece() == chrome::kChromeUIDiscardsHost)
return &NewWebUI<DiscardsUI>;
#endif
+ #if defined(OS_WIN) || defined(OS_MACOSX) || \
+- (defined(OS_LINUX) && !defined(OS_CHROMEOS))
++ (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
+ if (url.host_piece() == chrome::kChromeUIBrowserSwitchHost)
+ return &NewWebUI<BrowserSwitchUI>;
+ #endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.cc
index 658549a402c6..78796dc2dab0 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.cc
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/chrome/common/chrome_paths.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/chrome/common/chrome_paths.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/common/chrome_paths.cc
@@ -52,21 +52,21 @@ const base::FilePath::CharType kPepperFlashSystemBaseD
FILE_PATH_LITERAL("Internet Plug-Ins/PepperFlashPlayer");
@@ -9,12 +9,13 @@
// The path to the external extension <id>.json files.
// /usr/share seems like a good choice, see: http://www.pathname.com/fhs/
const base::FilePath::CharType kFilepathSinglePrefExtensions[] =
- #if defined(GOOGLE_CHROME_BUILD)
- FILE_PATH_LITERAL("/usr/share/google-chrome/extensions");
+ #if BUILDFLAG(GOOGLE_CHROME_BRANDING)
+- FILE_PATH_LITERAL("/usr/share/google-chrome/extensions");
++ FILE_PATH_LITERAL("/usr/local/share/google-chrome/extensions");
#else
- FILE_PATH_LITERAL("/usr/share/chromium/extensions");
+ FILE_PATH_LITERAL("/usr/local/share/chromium/extensions");
- #endif // defined(GOOGLE_CHROME_BUILD)
+ #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING)
// The path to the hint file that tells the pepper plugin loader
// where it can find the latest component updated flash.
@@ -34,30 +35,16 @@
if (!GetUserDownloadsDirectorySafe(&cur))
return false;
break;
-@@ -459,10 +459,12 @@ bool PathProvider(int key, base::FilePath* result) {
- if (!base::PathExists(cur)) // We don't want to create this
- return false;
- break;
--#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD)
-+#if defined(OS_POSIX) && !defined(OS_MACOSX)
- case chrome::DIR_POLICY_FILES: {
- #if defined(GOOGLE_CHROME_BUILD)
- cur = base::FilePath(FILE_PATH_LITERAL("/etc/opt/chrome/policies"));
-+#elif defined(OS_BSD)
-+ cur = base::FilePath(FILE_PATH_LITERAL("/usr/local/etc/chrome/policies"));
- #else
- cur = base::FilePath(FILE_PATH_LITERAL("/etc/chromium/policies"));
- #endif
-@@ -470,7 +472,7 @@ bool PathProvider(int key, base::FilePath* result) {
+@@ -470,7 +470,7 @@ bool PathProvider(int key, base::FilePath* result) {
}
#endif
- #if defined(OS_CHROMEOS) || (defined(OS_LINUX) && defined(CHROMIUM_BUILD)) || \
-- defined(OS_MACOSX)
-+ defined(OS_MACOSX) || defined(OS_BSD)
+ #if defined(OS_CHROMEOS) || \
+- (defined(OS_LINUX) && BUILDFLAG(CHROMIUM_BRANDING)) || defined(OS_MACOSX)
++ ((defined(OS_LINUX) || defined(OS_BSD)) && BUILDFLAG(CHROMIUM_BRANDING)) || defined(OS_MACOSX)
case chrome::DIR_USER_EXTERNAL_EXTENSIONS: {
if (!base::PathService::Get(chrome::DIR_USER_DATA, &cur))
return false;
-@@ -478,7 +480,7 @@ bool PathProvider(int key, base::FilePath* result) {
+@@ -478,7 +478,7 @@ bool PathProvider(int key, base::FilePath* result) {
break;
}
#endif
@@ -66,7 +53,7 @@
case chrome::DIR_STANDALONE_EXTERNAL_EXTENSIONS: {
cur = base::FilePath(kFilepathSinglePrefExtensions);
break;
-@@ -513,7 +515,7 @@ bool PathProvider(int key, base::FilePath* result) {
+@@ -513,7 +513,7 @@ bool PathProvider(int key, base::FilePath* result) {
#endif
break;
@@ -74,9 +61,9 @@
+#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD)
case chrome::DIR_NATIVE_MESSAGING:
#if defined(OS_MACOSX)
- #if defined(GOOGLE_CHROME_BUILD)
-@@ -527,6 +529,9 @@ bool PathProvider(int key, base::FilePath* result) {
- #if defined(GOOGLE_CHROME_BUILD)
+ #if BUILDFLAG(GOOGLE_CHROME_BRANDING)
+@@ -527,6 +527,9 @@ bool PathProvider(int key, base::FilePath* result) {
+ #if BUILDFLAG(GOOGLE_CHROME_BRANDING)
cur = base::FilePath(FILE_PATH_LITERAL(
"/etc/opt/chrome/native-messaging-hosts"));
+#elif defined(OS_BSD)
@@ -85,7 +72,7 @@
#else
cur = base::FilePath(FILE_PATH_LITERAL(
"/etc/chromium/native-messaging-hosts"));
-@@ -539,7 +544,7 @@ bool PathProvider(int key, base::FilePath* result) {
+@@ -539,7 +542,7 @@ bool PathProvider(int key, base::FilePath* result) {
return false;
cur = cur.Append(FILE_PATH_LITERAL("NativeMessagingHosts"));
break;
@@ -94,7 +81,7 @@
#if !defined(OS_ANDROID)
case chrome::DIR_GLOBAL_GCM_STORE:
if (!base::PathService::Get(chrome::DIR_USER_DATA, &cur))
-@@ -547,7 +552,7 @@ bool PathProvider(int key, base::FilePath* result) {
+@@ -547,7 +550,7 @@ bool PathProvider(int key, base::FilePath* result) {
cur = cur.Append(kGCMStoreDirname);
break;
#endif // !defined(OS_ANDROID)
@@ -103,7 +90,7 @@
case chrome::FILE_COMPONENT_FLASH_HINT:
if (!base::PathService::Get(
chrome::DIR_COMPONENT_UPDATED_PEPPER_FLASH_PLUGIN, &cur)) {
-@@ -555,7 +560,7 @@ bool PathProvider(int key, base::FilePath* result) {
+@@ -555,7 +558,7 @@ bool PathProvider(int key, base::FilePath* result) {
}
cur = cur.Append(kComponentUpdatedFlashHint);
break;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.h
index 4e1ff7dc2328..fe1d715da347 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__paths.h
@@ -1,15 +1,15 @@
---- src/3rdparty/chromium/chrome/common/chrome_paths.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/chrome/common/chrome_paths.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/common/chrome_paths.h
-@@ -51,7 +51,7 @@ enum {
- // to set policies for chrome. This directory
- // contains subdirectories.
+@@ -53,7 +53,7 @@ enum {
+ // contains subdirectories.
#endif
--#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && defined(CHROMIUM_BUILD)) || \
-+#if defined(OS_CHROMEOS) || ((defined(OS_LINUX) || defined(OS_BSD)) && defined(CHROMIUM_BUILD)) || \
- defined(OS_MACOSX)
+ #if defined(OS_CHROMEOS) || \
+- (defined(OS_LINUX) && BUILDFLAG(CHROMIUM_BRANDING)) || defined(OS_MACOSX)
++ ((defined(OS_LINUX) || defined(OS_BSD)) && BUILDFLAG(CHROMIUM_BRANDING)) || defined(OS_MACOSX)
DIR_USER_EXTERNAL_EXTENSIONS, // Directory for per-user external extensions
// on Chrome Mac and Chromium Linux.
-@@ -60,7 +60,7 @@ enum {
+ // On Chrome OS, this path is used for OEM
+@@ -61,7 +61,7 @@ enum {
// create it.
#endif
@@ -18,23 +18,23 @@
DIR_STANDALONE_EXTERNAL_EXTENSIONS, // Directory for 'per-extension'
// definition manifest files that
// describe extensions which are to be
-@@ -107,7 +107,7 @@ enum {
+@@ -108,7 +108,7 @@ enum {
DIR_SUPERVISED_USER_INSTALLED_WHITELISTS, // Directory where sanitized
// supervised user whitelists are
// installed.
-#if defined(OS_LINUX) || defined(OS_MACOSX)
-+#if defined(OS_LINUX) || defined(OS_BSD) || defined(OS_MACOSX)
- DIR_NATIVE_MESSAGING, // System directory where native messaging host
- // manifest files are stored.
- DIR_USER_NATIVE_MESSAGING, // Directory with Native Messaging Hosts
-@@ -122,10 +122,10 @@ enum {
- DIR_GEN_TEST_DATA, // Directory where generated test data resides.
- DIR_TEST_DATA, // Directory where unit test data resides.
- DIR_TEST_TOOLS, // Directory where unit test tools reside.
++#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD)
+ DIR_NATIVE_MESSAGING, // System directory where native messaging host
+ // manifest files are stored.
+ DIR_USER_NATIVE_MESSAGING, // Directory with Native Messaging Hosts
+@@ -123,10 +123,10 @@ enum {
+ DIR_GEN_TEST_DATA, // Directory where generated test data resides.
+ DIR_TEST_DATA, // Directory where unit test data resides.
+ DIR_TEST_TOOLS, // Directory where unit test tools reside.
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- FILE_COMPONENT_FLASH_HINT, // A file in a known location that points to
- // the component updated flash plugin.
+ FILE_COMPONENT_FLASH_HINT, // A file in a known location that points to
+ // the component updated flash plugin.
-#endif // defined(OS_LINUX)
+#endif // defined(OS_LINUX) || defined(OS_BSD)
#if defined(OS_CHROMEOS)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.cc
index 2e20c5f58798..891541e97a5a 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.cc
@@ -1,17 +1,11 @@
---- src/3rdparty/chromium/chrome/common/chrome_switches.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/chrome/common/chrome_switches.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/common/chrome_switches.cc
-@@ -914,12 +914,12 @@ const char kAllowNaClFileHandleAPI[] = "allow-n
+@@ -860,7 +860,7 @@ const char kAllowNaClFileHandleAPI[] = "allow-n
const char kAllowNaClSocketAPI[] = "allow-nacl-socket-api";
#endif
--#if defined(OS_WIN) || defined(OS_LINUX)
-+#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD)
- const char kDisableInputImeAPI[] = "disable-input-ime-api";
- const char kEnableInputImeAPI[] = "enable-input-ime-api";
- #endif
-
-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN)
+#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_BSD)
const char kEnableNewAppMenuIcon[] = "enable-new-app-menu-icon";
- #endif
+ // Causes the browser to launch directly in guest mode.
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.h
index 572695c89f60..e4122d43b69d 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_chrome__switches.h
@@ -1,17 +1,11 @@
---- src/3rdparty/chromium/chrome/common/chrome_switches.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/chrome/common/chrome_switches.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/common/chrome_switches.h
-@@ -282,12 +282,12 @@ extern const char kAllowNaClFileHandleAPI[];
+@@ -263,7 +263,7 @@ extern const char kAllowNaClFileHandleAPI[];
extern const char kAllowNaClSocketAPI[];
#endif
--#if defined(OS_WIN) || defined(OS_LINUX)
-+#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD)
- extern const char kDisableInputImeAPI[];
- extern const char kEnableInputImeAPI[];
- #endif
-
-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN)
+#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_BSD)
extern const char kEnableNewAppMenuIcon[];
+ extern const char kGuest[];
#endif
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_features.gni b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_features.gni
index 76693e6c6f9a..4f56e729896d 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_features.gni
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_features.gni
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/chrome/common/features.gni.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/chrome/common/features.gni.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/common/features.gni
@@ -41,9 +41,9 @@ declare_args() {
(is_desktop_linux && use_dbus) || is_chromeos
@@ -7,8 +7,8 @@
- is_win || is_mac || (is_linux && !is_chromeos && !is_chromecast)
+ is_win || is_mac || is_bsd || (is_linux && !is_chromeos && !is_chromecast)
-- enable_service_discovery = (enable_mdns && !is_android && !is_ios) || is_mac
-+ enable_service_discovery = (enable_mdns && !is_android && !is_ios) || is_mac || is_bsd
+- enable_service_discovery = (enable_mdns && !is_android) || is_mac
++ enable_service_discovery = (enable_mdns && !is_android) || is_mac || is_bsd
# Enables use of the session service, which is enabled by default.
# Android stores them separately on the Java side.
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.cc
index 20ae136945bd..637d6f7c120d 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.cc
@@ -1,15 +1,15 @@
---- src/3rdparty/chromium/chrome/common/webui_url_constants.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/chrome/common/webui_url_constants.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/common/webui_url_constants.cc
-@@ -239,7 +239,7 @@ const char kChromeUICastHost[] = "cast";
- const char kChromeUICastURL[] = "chrome://cast/";
+@@ -314,7 +314,7 @@ const char kChromeUIMetroFlowURL[] = "chrome://make-me
+ const char kChromeUICastHost[] = "cast";
#endif
-#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
+#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
const char kChromeUIDiscardsHost[] = "discards";
const char kChromeUIDiscardsURL[] = "chrome://discards/";
- #endif
-@@ -248,11 +248,11 @@ const char kChromeUIDiscardsURL[] = "chrome://discards
+ const char kChromeUIHatsHost[] = "hats";
+@@ -325,17 +325,17 @@ const char kChromeUIHatsURL[] = "chrome://hats/";
const char kChromeUILinuxProxyConfigHost[] = "linux-proxy-config";
#endif
@@ -18,12 +18,19 @@
const char kChromeUISandboxHost[] = "sandbox";
#endif
+ #if defined(OS_WIN) || defined(OS_MACOSX) || \
+- (defined(OS_LINUX) && !defined(OS_CHROMEOS))
++ (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
+ const char kChromeUIBrowserSwitchHost[] = "browser-switch";
+ const char kChromeUIBrowserSwitchURL[] = "chrome://browser-switch/";
+ #endif
+
-#if (defined(OS_LINUX) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA)
+#if ((defined(OS_BSD) || defined(OS_LINUX)) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA)
const char kChromeUITabModalConfirmDialogHost[] = "tab-modal-confirm-dialog";
#endif
-@@ -404,13 +404,13 @@ const char* const kChromeHostURLs[] = {
+@@ -579,13 +579,13 @@ const char* const kChromeHostURLs[] = {
kChromeUIInternetDetailDialogHost,
kChromeUIAssistantOptInHost,
#endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.h
index 63302c5c46b9..7960c2d6ed27 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_chrome_common_webui__url__constants.h
@@ -1,15 +1,15 @@
---- src/3rdparty/chromium/chrome/common/webui_url_constants.h.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/chrome/common/webui_url_constants.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/chrome/common/webui_url_constants.h
-@@ -232,7 +232,7 @@ extern const char kChromeUICastHost[];
- extern const char kChromeUICastURL[];
+@@ -272,7 +272,7 @@ extern const char kChromeUIMetroFlowURL[];
+ extern const char kChromeUICastHost[];
#endif
-#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
+#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
extern const char kChromeUIDiscardsHost[];
extern const char kChromeUIDiscardsURL[];
- #endif
-@@ -241,11 +241,11 @@ extern const char kChromeUIDiscardsURL[];
+ extern const char kChromeUIHatsHost[];
+@@ -284,17 +284,17 @@ extern const char kChromeUIHatsURL[];
extern const char kChromeUILinuxProxyConfigHost[];
#endif
@@ -18,6 +18,13 @@
extern const char kChromeUISandboxHost[];
#endif
+ #if defined(OS_WIN) || defined(OS_MACOSX) || \
+- (defined(OS_LINUX) && !defined(OS_CHROMEOS))
++ (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
+ extern const char kChromeUIBrowserSwitchHost[];
+ extern const char kChromeUIBrowserSwitchURL[];
+ #endif
+
-#if (defined(OS_LINUX) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA)
+#if ((defined(OS_BSD) || defined(OS_LINUX)) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA)
extern const char kChromeUITabModalConfirmDialogHost[];
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_crash_content_app_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_crash_content_app_BUILD.gn
index c7ecf95b69f1..2683361d0990 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_crash_content_app_BUILD.gn
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_crash_content_app_BUILD.gn
@@ -1,29 +1,20 @@
---- src/3rdparty/chromium/components/crash/content/app/BUILD.gn.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/components/crash/content/app/BUILD.gn.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/components/crash/content/app/BUILD.gn
-@@ -36,12 +36,12 @@ static_library("app") {
+@@ -54,7 +54,7 @@ static_library("app") {
sources += [ "crashpad.cc" ]
}
-- if (is_android || (is_linux && !is_chromeos)) {
-+ if (is_android || (is_linux && !is_chromeos && !is_bsd)) {
- set_sources_assignment_filter([])
- sources += [ "crashpad_linux.cc" ]
- }
-
- if (is_linux) {
+ if (is_linux && !is_bsd) {
sources += [
"breakpad_linux.cc",
"breakpad_linux.h",
-@@ -79,7 +79,10 @@ static_library("app") {
- "//third_party/crashpad/crashpad/snapshot",
+@@ -96,7 +96,7 @@ static_library("app") {
+ "//sandbox",
]
- if (is_linux) {
-+ if (is_bsd) {
-+ deps -= [ "//third_party/crashpad/crashpad/snapshot" ]
-+ }
+ if (is_linux && !is_bsd) {
- deps += [ "//third_party/breakpad:client" ]
- }
- }
+ deps += [
+ "//content/public/common",
+ "//third_party/breakpad:client",
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_crash_core_common_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_crash_core_common_BUILD.gn
index 0ddaec4b28d7..a1be56e5a543 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_crash_core_common_BUILD.gn
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_crash_core_common_BUILD.gn
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/components/crash/core/common/BUILD.gn.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/components/crash/core/common/BUILD.gn.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/components/crash/core/common/BUILD.gn
-@@ -6,7 +6,7 @@ import("//build/buildflag_header.gni")
+@@ -7,7 +7,7 @@ import("//components/gwp_asan/buildflags/buildflags.gn
declare_args() {
# If set to true, this will stub out and disable the entire crash key system.
@@ -9,7 +9,7 @@
}
group("common") {
-@@ -89,7 +89,6 @@ target(crash_key_target_type, "crash_key") {
+@@ -93,7 +93,6 @@ target(crash_key_target_type, "crash_key") {
]
}
@@ -17,12 +17,12 @@
}
}
-@@ -144,7 +143,7 @@ source_set("unit_tests") {
+@@ -153,7 +152,7 @@ source_set("unit_tests") {
sources += [ "objc_zombie_unittest.mm" ]
}
-- if (!is_mac && !is_win && !is_fuchsia && !is_android) {
-+ if (!is_mac && !is_win && !is_fuchsia && !is_android && !is_bsd) {
+- if (!is_mac && !is_ios && !is_win && !is_fuchsia && !is_android) {
++ if (!is_mac && !is_ios && !is_win && !is_fuchsia && !is_android && !is_bsd) {
include_dirs = [ "//third_party/breakpad/breakpad/src/" ]
sources += [ "crash_key_breakpad_unittest.cc" ]
}
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_download_quarantine_quarantine__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_download_quarantine_quarantine__linux.cc
deleted file mode 100644
index 3245535594c8..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_download_quarantine_quarantine__linux.cc
+++ /dev/null
@@ -1,36 +0,0 @@
---- src/3rdparty/chromium/components/download/quarantine/quarantine_linux.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/components/download/quarantine/quarantine_linux.cc
-@@ -2,11 +2,15 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
-
-+#include "build/build_config.h"
-+
- #include "components/download/quarantine/quarantine.h"
-
- #include <stddef.h>
- #include <sys/types.h>
-+#if !defined(OS_BSD)
- #include <sys/xattr.h>
-+#endif
-
- #include "base/files/file_path.h"
- #include "base/logging.h"
-@@ -25,7 +29,7 @@ bool SetExtendedFileAttribute(const char* path,
- int flags) {
- // On Chrome OS, there is no component that can validate these extended
- // attributes so there is no need to set them.
--#if !defined(OS_CHROMEOS)
-+#if !defined(OS_CHROMEOS) && !defined(OS_BSD)
- base::ScopedBlockingCall scoped_blocking_call(base::BlockingType::MAY_BLOCK);
- int result = setxattr(path, name, value, value_size, flags);
- if (result) {
-@@ -33,7 +37,7 @@ bool SetExtendedFileAttribute(const char* path,
- << path;
- return false;
- }
--#endif // !defined(OS_CHROMEOS)
-+#endif // !defined(OS_CHROMEOS) && !defined(OS_BSD)
- return true;
- }
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_metrics_system__memory__stats__recorder__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_metrics_system__memory__stats__recorder__linux.cc
index 15acf1e47ab3..e3340e52c178 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_metrics_system__memory__stats__recorder__linux.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_metrics_system__memory__stats__recorder__linux.cc
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/components/metrics/system_memory_stats_recorder_linux.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/components/metrics/system_memory_stats_recorder_linux.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/components/metrics/system_memory_stats_recorder_linux.cc
@@ -30,6 +30,7 @@ namespace metrics {
UMA_HISTOGRAM_LINEAR(name, sample, 2500, 50)
@@ -8,7 +8,7 @@
base::SystemMemoryInfoKB memory;
if (!base::GetSystemMemoryInfo(&memory))
return;
-@@ -93,6 +94,7 @@ void RecordMemoryStats(RecordMemoryStatsType type) {
+@@ -81,6 +82,7 @@ void RecordMemoryStats(RecordMemoryStatsType type) {
break;
}
}
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_services_filesystem_file__system__app.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_services_filesystem_file__system__app.cc
deleted file mode 100644
index d79496ff093a..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_services_filesystem_file__system__app.cc
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/3rdparty/chromium/components/services/filesystem/file_system_app.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/components/services/filesystem/file_system_app.cc
-@@ -19,7 +19,7 @@
- #elif defined(OS_ANDROID)
- #include "base/base_paths_android.h"
- #include "base/path_service.h"
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_BSD)
- #include "base/environment.h"
- #include "base/nix/xdg_util.h"
- #elif defined(OS_MACOSX)
-@@ -73,7 +73,7 @@ base::FilePath FileSystemApp::GetUserDataDir() {
- CHECK(base::PathService::Get(base::DIR_APP_DATA, &path));
- #elif defined(OS_ANDROID)
- CHECK(base::PathService::Get(base::DIR_ANDROID_APP_DATA, &path));
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_BSD)
- std::unique_ptr<base::Environment> env(base::Environment::Create());
- path = base::nix::GetXDGDirectory(
- env.get(), base::nix::kXdgConfigHomeEnvVar, base::nix::kDotConfigDir);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_services_font_font__service__app.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_services_font_font__service__app.cc
deleted file mode 100644
index aaf5c5e83c5c..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_services_font_font__service__app.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/components/services/font/font_service_app.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/components/services/font/font_service_app.cc
-@@ -20,7 +20,7 @@
- #include "components/services/font/ppapi_fontconfig_matching.h" // nogncheck
- #endif
-
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- #include "base/test/fontconfig_util_linux.h"
- #endif
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_storage__monitor_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_storage__monitor_BUILD.gn
index 1bb27f3048aa..35762dbd4a7e 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_storage__monitor_BUILD.gn
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_storage__monitor_BUILD.gn
@@ -1,14 +1,10 @@
---- src/3rdparty/chromium/components/storage_monitor/BUILD.gn.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/components/storage_monitor/BUILD.gn.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/components/storage_monitor/BUILD.gn
-@@ -65,6 +65,17 @@ static_library("storage_monitor") {
- ]
+@@ -79,6 +79,13 @@ static_library("storage_monitor") {
+ }
}
+ if (is_bsd) {
-+ sources -= [
-+ "mtab_watcher_linux.cc",
-+ "mtab_watcher_linux.h",
-+ ]
+ sources += [
+ "storage_monitor_freebsd.cc",
+ "storage_monitor_freebsd.h",
@@ -16,5 +12,5 @@
+ }
+
if (use_udev) {
- deps += [ "//device/udev_linux" ]
- } else if (is_linux) {
+ sources += [
+ "udev_util_linux.cc",
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_update__client_update__query__params.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_update__client_update__query__params.cc
index 73f46edf862f..c71549e7a32b 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_update__client_update__query__params.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_components_update__client_update__query__params.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/components/update_client/update_query_params.cc.orig 2019-05-23 14:39:34.000000000 +0200
-+++ src/3rdparty/chromium/components/update_client/update_query_params.cc 2019-10-29 02:42:47.135055000 +0100
-@@ -38,6 +38,8 @@
+--- src/3rdparty/chromium/components/update_client/update_query_params.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/components/update_client/update_query_params.cc
+@@ -38,6 +38,8 @@ const char kOs[] =
"fuchsia";
#elif defined(OS_OPENBSD)
"openbsd";
@@ -9,21 +9,3 @@
#else
#error "unknown os"
#endif
-@@ -55,6 +57,8 @@
- "mips64el";
- #elif defined(__mips__)
- "mipsel";
-+#elif defined(__powerpc64__)
-+ "ppc64";
- #else
- #error "unknown arch"
- #endif
-@@ -127,6 +131,8 @@
- return "mips32";
- #elif defined(ARCH_CPU_MIPS64EL)
- return "mips64";
-+#elif defined(ARCH_CPU_PPC64)
-+ return "ppc64";
- #else
- // NOTE: when adding new values here, please remember to update the
- // comment in the .h file about possible return values from this function.
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn
deleted file mode 100644
index 386ec5138051..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_BUILD.gn
+++ /dev/null
@@ -1,14 +0,0 @@
---- src/3rdparty/chromium/content/browser/BUILD.gn.orig 2019-03-01 17:04:22 UTC
-+++ src/3rdparty/chromium/content/browser/BUILD.gn
-@@ -1883,11 +1883,6 @@ jumbo_source_set("browser") {
- "tracing/cros_tracing_agent.h",
- ]
- deps += [ "//chromeos/resources" ]
-- } else {
-- sources += [
-- "memory/memory_monitor_linux.cc",
-- "memory/memory_monitor_linux.h",
-- ]
- }
-
- if (is_chromeos || is_android || is_chromecast) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_builtin__service__manifests.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_builtin__service__manifests.cc
new file mode 100644
index 000000000000..6ee23f6cf0a4
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_builtin__service__manifests.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/content/browser/builtin_service_manifests.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/browser/builtin_service_manifests.cc
+@@ -32,7 +32,7 @@
+ #include "services/tracing/manifest.h"
+ #include "services/video_capture/public/cpp/manifest.h"
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ #include "components/services/font/public/cpp/manifest.h" // nogncheck
+ #endif
+
+@@ -99,7 +99,7 @@ const std::vector<service_manager::Manifest>& GetBuilt
+ : service_manager::Manifest::ExecutionMode::
+ kInProcessBuiltin),
+ #endif
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ font_service::GetManifest(),
+ #endif
+ #if defined(OS_CHROMEOS)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__process__host.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__process__host.cc
new file mode 100644
index 000000000000..1732a21eac4e
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_gpu_gpu__process__host.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/content/browser/gpu/gpu_process_host.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/browser/gpu/gpu_process_host.cc
+@@ -1076,7 +1076,7 @@ bool GpuProcessHost::LaunchGpuProcess() {
+ std::unique_ptr<base::CommandLine> cmd_line =
+ std::make_unique<base::CommandLine>(base::CommandLine::NO_PROGRAM);
+ #else
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ int child_flags = gpu_launcher.empty() ? ChildProcessHost::CHILD_ALLOW_SELF
+ : ChildProcessHost::CHILD_NORMAL;
+ #elif defined(OS_MACOSX)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__internals.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__internals.cc
index 39c0cb2df18a..44c629f77865 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__internals.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_media_media__internals.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/content/browser/media/media_internals.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/content/browser/media/media_internals.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/content/browser/media/media_internals.cc
-@@ -724,7 +724,7 @@ void MediaInternals::UpdateVideoCaptureDeviceCapabilit
+@@ -506,7 +506,7 @@ void MediaInternals::UpdateVideoCaptureDeviceCapabilit
device_dict->SetString("name", descriptor.GetNameAndModel());
device_dict->Set("formats", std::move(format_list));
#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_memory_memory__monitor.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_memory_memory__monitor.cc
deleted file mode 100644
index 92968790a438..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_memory_memory__monitor.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/content/browser/memory/memory_monitor.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/content/browser/memory/memory_monitor.cc
-@@ -22,7 +22,7 @@ void MemoryMonitorDelegate::GetSystemMemoryInfo(
- base::GetSystemMemoryInfo(mem_info);
- }
-
--#if defined(OS_MACOSX)
-+#if defined(OS_MACOSX) || defined(OS_BSD)
- // TODO(bashi,bcwhite): Remove when memory monitor for mac is available.
- std::unique_ptr<MemoryMonitor> CreateMemoryMonitor() {
- NOTREACHED();
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_ppapi__plugin__process__host.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_ppapi__plugin__process__host.cc
new file mode 100644
index 000000000000..985b0b4c1f82
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_ppapi__plugin__process__host.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/content/browser/ppapi_plugin_process_host.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/browser/ppapi_plugin_process_host.cc
+@@ -359,7 +359,7 @@ bool PpapiPluginProcessHost::Init(const PepperPluginIn
+ base::CommandLine::StringType plugin_launcher =
+ browser_command_line.GetSwitchValueNative(switches::kPpapiPluginLauncher);
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ int flags = plugin_launcher.empty() ? ChildProcessHost::CHILD_ALLOW_SELF :
+ ChildProcessHost::CHILD_NORMAL;
+ #elif defined(OS_MACOSX)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_input_input__device__change__observer.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_input_input__device__change__observer.cc
index e770b0d51e8b..32f2adfcf953 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_input_input__device__change__observer.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_input_input__device__change__observer.cc
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/content/browser/renderer_host/input/input_device_change_observer.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/content/browser/renderer_host/input/input_device_change_observer.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/content/browser/renderer_host/input/input_device_change_observer.cc
@@ -10,7 +10,7 @@
@@ -6,7 +6,7 @@
#include "ui/events/devices/input_device_observer_win.h"
-#elif defined(OS_LINUX)
+#elif defined(OS_LINUX) || defined(OS_BSD)
- #include "ui/events/devices/input_device_manager.h"
+ #include "ui/events/devices/device_data_manager.h"
#elif defined(OS_ANDROID)
#include "ui/events/devices/input_device_observer_android.h"
@@ -22,7 +22,7 @@ InputDeviceChangeObserver::InputDeviceChangeObserver(R
@@ -15,7 +15,7 @@
ui::InputDeviceObserverWin::GetInstance()->AddObserver(this);
-#elif defined(OS_LINUX)
+#elif defined(OS_LINUX) || defined(OS_BSD)
- ui::InputDeviceManager::GetInstance()->AddObserver(this);
+ ui::DeviceDataManager::GetInstance()->AddObserver(this);
#elif defined(OS_ANDROID)
ui::InputDeviceObserverAndroid::GetInstance()->AddObserver(this);
@@ -32,7 +32,7 @@ InputDeviceChangeObserver::InputDeviceChangeObserver(R
@@ -24,6 +24,6 @@
ui::InputDeviceObserverWin::GetInstance()->RemoveObserver(this);
-#elif defined(OS_LINUX)
+#elif defined(OS_LINUX) || defined(OS_BSD)
- ui::InputDeviceManager::GetInstance()->RemoveObserver(this);
+ ui::DeviceDataManager::GetInstance()->RemoveObserver(this);
#elif defined(OS_ANDROID)
ui::InputDeviceObserverAndroid::GetInstance()->RemoveObserver(this);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_pepper_pepper__file__io__host.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_pepper_pepper__file__io__host.cc
new file mode 100644
index 000000000000..6b13a3848c6f
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_pepper_pepper__file__io__host.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/content/browser/renderer_host/pepper/pepper_file_io_host.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/browser/renderer_host/pepper/pepper_file_io_host.cc
+@@ -432,7 +432,7 @@ void PepperFileIOHost::OnLocalFileOpened(
+ ppapi::host::ReplyMessageContext reply_context,
+ const base::FilePath& path,
+ base::File::Error error_code) {
+-#if defined(OS_WIN) || defined(OS_LINUX)
++#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD)
+ // Quarantining a file before its contents are available is only supported on
+ // Windows and Linux.
+ if (!FileOpenForWrite(open_flags_) || error_code != base::File::FILE_OK) {
+@@ -452,7 +452,7 @@ void PepperFileIOHost::OnLocalFileOpened(
+ #endif
+ }
+
+-#if defined(OS_WIN) || defined(OS_LINUX)
++#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD)
+ void PepperFileIOHost::OnLocalFileQuarantined(
+ ppapi::host::ReplyMessageContext reply_context,
+ const base::FilePath& path,
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.cc
new file mode 100644
index 000000000000..a41d27711120
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.cc
@@ -0,0 +1,38 @@
+--- src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.cc
+@@ -230,7 +230,7 @@
+ #include "content/browser/compositor/image_transport_factory.h"
+ #endif
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ #include <sys/resource.h>
+ #include <sys/time.h>
+ #endif
+@@ -1232,7 +1232,7 @@ static constexpr size_t kUnknownPlatformProcessLimit =
+ // to indicate failure and std::numeric_limits<size_t>::max() to indicate
+ // unlimited.
+ size_t GetPlatformProcessLimit() {
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ struct rlimit limit;
+ if (getrlimit(RLIMIT_NPROC, &limit) != 0)
+ return kUnknownPlatformProcessLimit;
+@@ -1243,7 +1243,7 @@ size_t GetPlatformProcessLimit() {
+ #else
+ // TODO(https://crbug.com/104689): Implement on other platforms.
+ return kUnknownPlatformProcessLimit;
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+ }
+ #endif // !defined(OS_ANDROID) && !defined(OS_CHROMEOS)
+
+@@ -1651,7 +1651,7 @@ bool RenderProcessHostImpl::Init() {
+ renderer_prefix =
+ browser_command_line.GetSwitchValueNative(switches::kRendererCmdPrefix);
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ int flags = renderer_prefix.empty() ? ChildProcessHost::CHILD_ALLOW_SELF
+ : ChildProcessHost::CHILD_NORMAL;
+ #elif defined(OS_MACOSX)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_jank__monitor.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_jank__monitor.cc
new file mode 100644
index 000000000000..60eb18543e75
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_jank__monitor.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/content/browser/scheduler/responsiveness/jank_monitor.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/browser/scheduler/responsiveness/jank_monitor.cc
+@@ -298,7 +298,7 @@ void JankMonitor::ThreadExecutionState::DidRunTaskOrEv
+ // in context menus, among others). Simply ignore the mismatches for now.
+ // See https://crbug.com/929813 for the details of why the mismatch
+ // happens.
+-#if !defined(OS_CHROMEOS) && defined(OS_LINUX) && defined(USE_OZONE)
++#if !defined(OS_CHROMEOS) && (defined(OS_LINUX) || defined(OS_BSD)) && defined(USE_OZONE)
+ task_execution_metadata_.clear();
+ #endif
+ return;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_watcher.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_watcher.cc
new file mode 100644
index 000000000000..e22ca804e81f
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_scheduler_responsiveness_watcher.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/content/browser/scheduler/responsiveness/watcher.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/browser/scheduler/responsiveness/watcher.cc
+@@ -96,7 +96,7 @@ void Watcher::DidRunTask(const base::PendingTask* task
+ // in context menus, among others). Simply ignore the mismatches for now.
+ // See https://crbug.com/929813 for the details of why the mismatch
+ // happens.
+-#if !defined(OS_CHROMEOS) && defined(OS_LINUX) && defined(USE_OZONE)
++#if !defined(OS_CHROMEOS) && (defined(OS_LINUX) || defined(OS_BSD)) && defined(USE_OZONE)
+ return currently_running_metadata_ui_.clear();
+ #endif
+ DCHECK_LE(*mismatched_task_identifiers, 1);
+@@ -156,7 +156,7 @@ void Watcher::DidRunEventOnUIThread(const void* opaque
+ mismatched_event_identifiers_ui_ += 1;
+ // See comment in DidRunTask() for why |currently_running_metadata_ui_| may
+ // be reset.
+-#if !defined(OS_CHROMEOS) && defined(OS_LINUX) && defined(USE_OZONE)
++#if !defined(OS_CHROMEOS) && (defined(OS_LINUX) || defined(OS_BSD)) && defined(USE_OZONE)
+ return currently_running_metadata_ui_.clear();
+ #endif
+ DCHECK_LE(mismatched_event_identifiers_ui_, 1);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_service__manager_service__manager__context.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_service__manager_service__manager__context.cc
index 91c753ea79a0..c7784c310ed4 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_service__manager_service__manager__context.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_service__manager_service__manager__context.cc
@@ -1,15 +1,15 @@
---- src/3rdparty/chromium/content/browser/service_manager/service_manager_context.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/content/browser/service_manager/service_manager_context.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/content/browser/service_manager/service_manager_context.cc
-@@ -99,7 +99,7 @@
- #include "jni/ContentNfcDelegate_jni.h"
+@@ -98,7 +98,7 @@
+ #include "content/public/android/content_jni_headers/ContentNfcDelegate_jni.h"
#endif
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
#include "components/services/font/font_service_app.h"
- #include "components/services/font/public/interfaces/constants.mojom.h"
+ #include "components/services/font/public/mojom/constants.mojom.h" // nogncheck
#endif
-@@ -378,12 +378,12 @@ void CreateInProcessAudioService(
+@@ -341,12 +341,12 @@ void CreateInProcessAudioService(
BrowserMainLoop::GetAudioManager(), std::move(request)));
}
@@ -24,12 +24,12 @@
std::unique_ptr<service_manager::Service> CreateResourceCoordinatorService(
service_manager::mojom::ServiceRequest request) {
-@@ -618,7 +618,7 @@ ServiceManagerContext::ServiceManagerContext(
+@@ -657,7 +657,7 @@ ServiceManagerContext::ServiceManagerContext(
base::BindRepeating(&CreateVideoCaptureService));
}
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
RegisterInProcessService(
- packaged_services_connection_.get(), font_service::mojom::kServiceName,
+ font_service::mojom::kServiceName,
base::CreateSequencedTaskRunnerWithTraits(
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_storage__partition__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_storage__partition__impl.cc
deleted file mode 100644
index 13d2b51ae653..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_storage__partition__impl.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/content/browser/storage_partition_impl.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/content/browser/storage_partition_impl.cc
-@@ -768,7 +768,7 @@ net::URLRequestContextGetter* StoragePartitionImpl::Ge
- // TODO(jam): enable for all, still used on WebView.
- // See copy of this ifdef in:
- // StoragePartitionImplMap::Get
--#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
-+#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
- if (base::FeatureList::IsEnabled(network::features::kNetworkService))
- NOTREACHED();
- #endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_storage__partition__impl__map.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_storage__partition__impl__map.cc
deleted file mode 100644
index 78ad82e71c22..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_storage__partition__impl__map.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/content/browser/storage_partition_impl_map.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/content/browser/storage_partition_impl_map.cc
-@@ -425,7 +425,7 @@ StoragePartitionImpl* StoragePartitionImplMap::Get(
- bool create_request_context = true;
- if (base::FeatureList::IsEnabled(network::features::kNetworkService)) {
- // These ifdefs should match StoragePartitionImpl::GetURLRequestContext.
--#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
-+#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
- create_request_context = false;
- #elif defined(OS_ANDROID)
- create_request_context =
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host.cc
new file mode 100644
index 000000000000..abd7591245eb
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_utility__process__host.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/content/browser/utility_process_host.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/browser/utility_process_host.cc
+@@ -211,7 +211,7 @@ UtilityProcessHost::UtilityProcessHost()
+
+ UtilityProcessHost::UtilityProcessHost(std::unique_ptr<Client> client)
+ : sandbox_type_(service_manager::SANDBOX_TYPE_UTILITY),
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ child_flags_(ChildProcessHost::CHILD_ALLOW_SELF),
+ #else
+ child_flags_(ChildProcessHost::CHILD_NORMAL),
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_webui_shared__resources__data__source.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_webui_shared__resources__data__source.cc
index c224ed8ace9c..d3af486fa8f5 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_webui_shared__resources__data__source.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_browser_webui_shared__resources__data__source.cc
@@ -1,12 +1,15 @@
---- src/3rdparty/chromium/content/browser/webui/shared_resources_data_source.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/content/browser/webui/shared_resources_data_source.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/content/browser/webui/shared_resources_data_source.cc
-@@ -72,9 +72,9 @@ const std::map<int, std::string> CreateMojoResourceIdT
- return std::map<int, std::string> {
- {IDR_MOJO_MOJO_BINDINGS_JS, "js/mojo_bindings.js"},
- {IDR_MOJO_MOJO_BINDINGS_LITE_JS, "js/mojo_bindings_lite.js"},
+@@ -120,12 +120,12 @@ const std::map<int, std::string> CreateMojoResourceIdT
+ "mojo/mojo/public/mojom/base/string16.mojom.html"},
+ {IDR_MOJO_STRING16_MOJOM_LITE_JS,
+ "mojo/mojo/public/mojom/base/string16.mojom-lite.js"},
-#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
+#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
- {IDR_MOJO_TIME_MOJOM_JS, "js/time.mojom.js"},
+ {IDR_MOJO_TIME_MOJOM_HTML,
+ "mojo/mojo/public/mojom/base/time.mojom.html"},
+ {IDR_MOJO_TIME_MOJOM_LITE_JS,
+ "mojo/mojo/public/mojom/base/time.mojom-lite.js"},
-#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
+#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
};
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
index 6c6f1ccaea77..c1c6a5a81eac 100644
--- 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
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/content/gpu/gpu_main.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/content/gpu/gpu_main.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/content/gpu/gpu_main.cc
-@@ -77,7 +77,7 @@
+@@ -84,7 +84,7 @@
#include "ui/gfx/x/x11_switches.h" // nogncheck
#endif
@@ -9,7 +9,7 @@
#include "content/gpu/gpu_sandbox_hook_linux.h"
#include "content/public/common/sandbox_init.h"
#include "services/service_manager/sandbox/linux/sandbox_linux.h"
-@@ -110,7 +110,7 @@ namespace content {
+@@ -113,7 +113,7 @@ namespace content {
namespace {
@@ -18,7 +18,7 @@
bool StartSandboxLinux(gpu::GpuWatchdogThread*,
const gpu::GPUInfo*,
const gpu::GpuPreferences&);
-@@ -171,7 +171,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel
+@@ -174,7 +174,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel
bool EnsureSandboxInitialized(gpu::GpuWatchdogThread* watchdog_thread,
const gpu::GPUInfo* gpu_info,
const gpu::GpuPreferences& gpu_prefs) override {
@@ -27,7 +27,16 @@
return StartSandboxLinux(watchdog_thread, gpu_info, gpu_prefs);
#elif defined(OS_WIN)
return StartSandboxWindows(sandbox_info_);
-@@ -355,7 +355,7 @@ int GpuMain(const MainFunctionParams& parameters) {
+@@ -280,7 +280,7 @@ int GpuMain(const MainFunctionParams& parameters) {
+ main_thread_task_executor =
+ std::make_unique<base::SingleThreadTaskExecutor>(
+ gpu_preferences.message_loop_type);
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_BSD)
+ #error "Unsupported Linux platform."
+ #elif defined(OS_MACOSX)
+ // Cross-process CoreAnimation requires a CFRunLoop to function at all, and
+@@ -388,7 +388,7 @@ int GpuMain(const MainFunctionParams& parameters) {
namespace {
@@ -36,7 +45,7 @@
bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdog_thread,
const gpu::GPUInfo* gpu_info,
const gpu::GpuPreferences& gpu_prefs) {
-@@ -390,7 +390,7 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdo
+@@ -423,7 +423,7 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdo
return res;
}
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__main__delegate.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__main__delegate.cc
new file mode 100644
index 000000000000..ea95400d1854
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__main__delegate.cc
@@ -0,0 +1,18 @@
+--- src/3rdparty/chromium/content/public/app/content_main_delegate.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/public/app/content_main_delegate.cc
+@@ -38,13 +38,13 @@ bool ContentMainDelegate::DelaySandboxInitialization(
+ return false;
+ }
+
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_BSD)
+
+ void ContentMainDelegate::ZygoteStarting(
+ std::vector<std::unique_ptr<service_manager::ZygoteForkDelegate>>*
+ delegates) {}
+
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ int ContentMainDelegate::TerminateForFatalInitializationError() {
+ CHECK(false);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__main__delegate.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__main__delegate.h
new file mode 100644
index 000000000000..0c988814cbc2
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__main__delegate.h
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/content/public/app/content_main_delegate.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/public/app/content_main_delegate.h
+@@ -71,7 +71,7 @@ class CONTENT_EXPORT ContentMainDelegate {
+ // want it at all.
+ virtual bool DelaySandboxInitialization(const std::string& process_type);
+
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_BSD)
+ // Tells the embedder that the zygote process is starting, and allows it to
+ // specify one or more zygote delegates if it wishes by storing them in
+ // |*delegates|.
+@@ -81,7 +81,7 @@ class CONTENT_EXPORT ContentMainDelegate {
+
+ // Called every time the zygote process forks.
+ virtual void ZygoteForked() {}
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ // Allows the embedder to prevent locking the scheme registry. The scheme
+ // registry is the list of URL schemes we recognize, with some additional
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__packaged__services__manifest.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__packaged__services__manifest.cc
deleted file mode 100644
index 2663cdad6b6d..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_app_content__packaged__services__manifest.cc
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/3rdparty/chromium/content/public/app/content_packaged_services_manifest.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/content/public/app/content_packaged_services_manifest.cc
-@@ -23,7 +23,7 @@
- #include "services/video_capture/manifest.h"
- #include "services/viz/manifest.h"
-
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- #include "components/services/font/manifest.h"
- #endif
-
-@@ -67,7 +67,7 @@ const service_manager::Manifest& GetContentPackagedSer
- .PackageService(tracing::GetManifest())
- .PackageService(video_capture::GetManifest())
- .PackageService(viz::GetManifest())
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- .PackageService(font_service::GetManifest())
- #endif
- #if defined(OS_CHROMEOS)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_child__process__host.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_child__process__host.h
index 30c14957e506..4e21f8dbb7ec 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_child__process__host.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_child__process__host.h
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/content/public/common/child_process_host.h.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/content/public/common/child_process_host.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/content/public/common/child_process_host.h
-@@ -45,7 +45,7 @@ class CONTENT_EXPORT ChildProcessHost : public IPC::Se
+@@ -51,7 +51,7 @@ class CONTENT_EXPORT ChildProcessHost : public IPC::Se
// No special behavior requested.
CHILD_NORMAL = 0,
@@ -9,12 +9,3 @@
// Indicates that the child execed after forking may be execced from
// /proc/self/exe rather than using the "real" app path. This prevents
// autoupdate from confusing us if it changes the file out from under us.
-@@ -54,7 +54,7 @@ class CONTENT_EXPORT ChildProcessHost : public IPC::Se
- // gdb). In this case, you'd use GetChildPath to get the real executable
- // file name, and then prepend the GDB command to the command line.
- CHILD_ALLOW_SELF = 1 << 0,
--#endif // defined(OS_LINUX)
-+#endif // defined(OS_LINUX) || defined(OS_BSD)
- };
-
- // Returns the pathname to be used for a child process. If a subprocess
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.cc
index 356e11b64bac..1981366ab473 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_content__features.cc
@@ -1,11 +1,29 @@
---- src/3rdparty/chromium/content/public/common/content_features.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/content/public/common/content_features.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/content/public/common/content_features.cc
-@@ -493,7 +493,7 @@ const base::Feature kWebAssemblyThreads{"WebAssemblyTh
- base::FEATURE_DISABLED_BY_DEFAULT};
+@@ -43,7 +43,7 @@ const base::Feature kAudioServiceLaunchOnStartup{
+ // Runs the audio service in a separate process.
+ const base::Feature kAudioServiceOutOfProcess{
+ "AudioServiceOutOfProcess",
+-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
++#if defined(OS_LINUX) && !defined(OS_CHROMEOS) || defined(OS_BSD)
+ base::FEATURE_ENABLED_BY_DEFAULT
+ #else
+ base::FEATURE_DISABLED_BY_DEFAULT
+@@ -618,7 +618,7 @@ const base::Feature kWebAssemblyThreads {
+ };
// Enable WebAssembly trap handler.
--#if defined(OS_LINUX) && defined(ARCH_CPU_X86_64)
-+#if (defined(OS_BSD) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_64)
+-#if (defined(OS_LINUX) || defined(OS_WIN) || defined(OS_MACOSX)) && \
++#if (defined(OS_BSD) || defined(OS_LINUX) || defined(OS_WIN) || defined(OS_MACOSX)) && \
+ defined(ARCH_CPU_X86_64)
const base::Feature kWebAssemblyTrapHandler{"WebAssemblyTrapHandler",
base::FEATURE_ENABLED_BY_DEFAULT};
+@@ -653,7 +653,7 @@ const base::Feature kWebAuthBle{"WebAuthenticationBle"
+ // https://w3c.github.io/webauthn
+ const base::Feature kWebAuthCable {
+ "WebAuthenticationCable",
+-#if !defined(OS_CHROMEOS) && defined(OS_LINUX)
++#if (!defined(OS_CHROMEOS) && defined(OS_LINUX)) || defined(OS_BSD)
+ base::FEATURE_DISABLED_BY_DEFAULT
#else
+ base::FEATURE_ENABLED_BY_DEFAULT
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_renderer__preferences.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_renderer__preferences.h
deleted file mode 100644
index ef8286b1ffae..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_public_common_renderer__preferences.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/content/public/common/renderer_preferences.h.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/content/public/common/renderer_preferences.h
-@@ -137,7 +137,7 @@ struct CONTENT_EXPORT RendererPreferences {
- // Country iso of the mobile network for content detection purpose.
- std::string network_contry_iso;
-
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- std::string system_font_family_name;
- #endif
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_media_stream_processed__local__audio__source.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_media_stream_processed__local__audio__source.cc
deleted file mode 100644
index 84ef35c04168..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_media_stream_processed__local__audio__source.cc
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/3rdparty/chromium/content/renderer/media/stream/processed_local_audio_source.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/content/renderer/media/stream/processed_local_audio_source.cc
-@@ -35,7 +35,7 @@ void* const kProcessedLocalAudioSourceIdentifier =
- const_cast<void**>(&kProcessedLocalAudioSourceIdentifier);
-
- bool ApmInAudioServiceEnabled() {
--#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
-+#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
- return base::FeatureList::IsEnabled(features::kWebRtcApmInAudioService);
- #else
- return false;
-@@ -355,7 +355,7 @@ void ProcessedLocalAudioSource::CaptureUsingProcessor(
- bool key_pressed) {
- #if defined(OS_WIN) || defined(OS_MACOSX)
- DCHECK_LE(volume, 1.0);
--#elif (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_OPENBSD)
-+#elif (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
- // We have a special situation on Linux where the microphone volume can be
- // "higher than maximum". The input volume slider in the sound preference
- // allows the user to set a scaling that is higher than 100%. It means that
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__process__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__process__impl.cc
new file mode 100644
index 000000000000..1f5e385509d8
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__process__impl.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/content/renderer/render_process_impl.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/content/renderer/render_process_impl.cc
+@@ -43,7 +43,7 @@
+ #if defined(OS_WIN)
+ #include "base/win/win_util.h"
+ #endif
+-#if defined(OS_LINUX) && defined(ARCH_CPU_X86_64)
++#if (defined(OS_LINUX) || defined(OS_BSD)) && defined(ARCH_CPU_X86_64)
+ #include "v8/include/v8-wasm-trap-handler-posix.h"
+ #endif
+ namespace {
+@@ -156,7 +156,7 @@ RenderProcessImpl::RenderProcessImpl()
+
+ SetV8FlagIfNotFeature(features::kWebAssemblyTrapHandler,
+ "--no-wasm-trap-handler");
+-#if defined(OS_LINUX) && defined(ARCH_CPU_X86_64)
++#if (defined(OS_LINUX) || defined(OS_BSD)) && defined(ARCH_CPU_X86_64)
+ if (base::FeatureList::IsEnabled(features::kWebAssemblyTrapHandler)) {
+ base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
+ if (!command_line->HasSwitch(
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__thread__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__thread__impl.cc
index 2082d4589e03..f6237ce8754e 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__thread__impl.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_renderer_render__thread__impl.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/content/renderer/render_thread_impl.cc.orig 2019-03-01 17:04:22 UTC
+--- src/3rdparty/chromium/content/renderer/render_thread_impl.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/content/renderer/render_thread_impl.cc
-@@ -194,12 +194,21 @@
+@@ -186,12 +186,21 @@
#include "mojo/public/cpp/bindings/message_dumper.h"
#endif
@@ -22,7 +22,7 @@
using base::ThreadRestrictions;
using blink::WebDocument;
using blink::WebFrame;
-@@ -936,7 +945,7 @@ void RenderThreadImpl::Init() {
+@@ -904,7 +913,7 @@ void RenderThreadImpl::Init() {
DCHECK(parsed_num_raster_threads) << string_value;
DCHECK_GT(num_raster_threads, 0);
@@ -31,21 +31,16 @@
categorized_worker_pool_->SetBackgroundingCallback(
main_thread_scheduler_->DefaultTaskRunner(),
base::BindOnce(
-@@ -977,7 +986,7 @@ void RenderThreadImpl::Init() {
- GetConnector()->BindInterface(mojom::kBrowserServiceName,
- mojo::MakeRequest(&storage_partition_service_));
+@@ -933,7 +942,7 @@ void RenderThreadImpl::Init() {
+ base::DiscardableMemoryAllocator::SetInstance(
+ discardable_shared_memory_manager_.get());
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
render_message_filter()->SetThreadPriority(
ChildProcess::current()->io_thread_id(), base::ThreadPriority::DISPLAY);
#endif
-@@ -1335,11 +1344,11 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl:
- gpu::kGpuFeatureStatusEnabled);
- const bool enable_gpu_memory_buffers =
- !is_gpu_compositing_disabled_ &&
--#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_WIN)
-+#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD)
+@@ -1313,7 +1322,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl:
!cmd_line->HasSwitch(switches::kDisableGpuMemoryBufferVideoFrames);
#else
cmd_line->HasSwitch(switches::kEnableGpuMemoryBufferVideoFrames);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_shell_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_shell_BUILD.gn
index 675f7b0c9182..8a96dae03d44 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_shell_BUILD.gn
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_content_shell_BUILD.gn
@@ -1,11 +1,11 @@
---- src/3rdparty/chromium/content/shell/BUILD.gn.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/content/shell/BUILD.gn.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/content/shell/BUILD.gn
-@@ -953,7 +953,7 @@ group("content_shell_crash_test") {
+@@ -980,7 +980,7 @@ group("content_shell_crash_test") {
if (is_win) {
data_deps += [ "//build/win:copy_cdb_to_output" ]
}
-- if (is_posix && !is_android) {
-+ if (is_posix && !is_android && !is_bsd) {
+- if (is_posix) {
++ if (is_posix && !is_bsd) {
data_deps += [
- "//third_party/breakpad:dump_syms($host_toolchain)",
- "//third_party/breakpad:minidump_stackwalk($host_toolchain)",
+ "//third_party/breakpad:dump_syms",
+ "//third_party/breakpad:minidump_stackwalk",
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_gamepad_gamepad__provider.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_gamepad_gamepad__provider.cc
index 62bb73f50c1d..e1f722403ed5 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_gamepad_gamepad__provider.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_gamepad_gamepad__provider.cc
@@ -1,9 +1,9 @@
---- src/3rdparty/chromium/device/gamepad/gamepad_provider.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/device/gamepad/gamepad_provider.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/device/gamepad/gamepad_provider.cc
-@@ -187,7 +187,7 @@ void GamepadProvider::Initialize(std::unique_ptr<Gamep
- monitor->AddDevicesChangedObserver(this);
+@@ -167,7 +167,7 @@ void GamepadProvider::Initialize(std::unique_ptr<Gamep
- polling_thread_.reset(new base::Thread("Gamepad polling thread"));
+ if (!polling_thread_)
+ polling_thread_.reset(new base::Thread("Gamepad polling thread"));
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
// On Linux, the data fetcher needs to watch file descriptors, so the message
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_BUILD.gn
deleted file mode 100644
index 0e816d399a55..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_BUILD.gn
+++ /dev/null
@@ -1,21 +0,0 @@
---- src/3rdparty/chromium/device/usb/BUILD.gn.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/device/usb/BUILD.gn
-@@ -109,10 +109,17 @@ static_library("usb") {
- ]
- }
-
-- if (is_android || is_chromeos || is_linux) {
-+ if (is_android || is_chromeos || (is_linux && !is_bsd)) {
- sources += [
- "usb_device_handle_usbfs.cc",
- "usb_device_handle_usbfs.h",
-+ ]
-+ }
-+
-+ if (is_bsd) {
-+ sources -= [
-+ "usb_device_linux.cc",
-+ "usb_device_linux.h",
- ]
- }
-
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
deleted file mode 100644
index fc72aa542fae..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__context.cc
+++ /dev/null
@@ -1,12 +0,0 @@
---- src/3rdparty/chromium/device/usb/usb_context.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/device/usb/usb_context.cc
-@@ -58,7 +58,9 @@ void UsbContext::UsbEventHandler::Run() {
-
- void UsbContext::UsbEventHandler::Stop() {
- base::subtle::Release_Store(&running_, 0);
-+#if !defined(OS_FREEBSD) // XXX(rene) not available in base version
- 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__error.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__error.cc
deleted file mode 100644
index 407af543b9d9..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__error.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/device/usb/usb_error.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/device/usb/usb_error.cc
-@@ -9,7 +9,7 @@
- namespace device {
-
- std::string ConvertPlatformUsbErrorToString(int errcode) {
-- return libusb_strerror(static_cast<libusb_error>(errcode));
-+ return "";
- }
-
- } // namespace device
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
deleted file mode 100644
index 53c2ed9dc5c8..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.cc
+++ /dev/null
@@ -1,45 +0,0 @@
---- src/3rdparty/chromium/device/usb/usb_service_impl.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/device/usb/usb_service_impl.cc
-@@ -239,8 +239,10 @@ UsbServiceImpl::UsbServiceImpl()
- }
-
- UsbServiceImpl::~UsbServiceImpl() {
-+#if !defined(OS_FREEBSD)
- if (hotplug_enabled_)
- libusb_hotplug_deregister_callback(context_->context(), hotplug_handle_);
-+#endif // !defined(OS_FREEBSD)
- }
-
- void UsbServiceImpl::GetDevices(const GetDevicesCallback& callback) {
-@@ -295,6 +297,7 @@ void UsbServiceImpl::OnUsbContext(scoped_refptr<UsbCon
-
- context_ = std::move(context);
-
-+#if !defined(OS_FREEBSD)
- int rv = libusb_hotplug_register_callback(
- context_->context(),
- static_cast<libusb_hotplug_event>(LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED |
-@@ -307,6 +310,7 @@ void UsbServiceImpl::OnUsbContext(scoped_refptr<UsbCon
-
- // This will call any enumeration callbacks queued while initializing.
- RefreshDevices();
-+#endif // !defined(OS_FREEBSD)
-
- #if defined(OS_WIN)
- DeviceMonitorWin* device_monitor = DeviceMonitorWin::GetForAllInterfaces();
-@@ -503,6 +507,7 @@ void UsbServiceImpl::RemoveDevice(scoped_refptr<UsbDev
- device->OnDisconnect();
- }
-
-+#if !defined(OS_FREEBSD)
- // static
- int LIBUSB_CALL UsbServiceImpl::HotplugCallback(libusb_context* context,
- libusb_device* device_raw,
-@@ -537,6 +542,7 @@ int LIBUSB_CALL UsbServiceImpl::HotplugCallback(libusb
-
- return 0;
- }
-+#endif // !defined(OS_FREEBSD)
-
- void UsbServiceImpl::OnPlatformDeviceAdded(
- ScopedLibusbDeviceRef platform_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
deleted file mode 100644
index 23fbec61d462..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_device_usb_usb__service__impl.h
+++ /dev/null
@@ -1,26 +0,0 @@
---- src/3rdparty/chromium/device/usb/usb_service_impl.h.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/device/usb/usb_service_impl.h
-@@ -73,11 +73,13 @@ class UsbServiceImpl :
- scoped_refptr<UsbDeviceImpl> device);
- void RemoveDevice(scoped_refptr<UsbDeviceImpl> device);
-
-+#if !defined(OS_FREEBSD)
- // Handle hotplug events from libusb.
- static int LIBUSB_CALL HotplugCallback(libusb_context* context,
- libusb_device* device,
- libusb_hotplug_event event,
- void* user_data);
-+#endif
- // These functions release a reference to the provided platform device.
- void OnPlatformDeviceAdded(ScopedLibusbDeviceRef platform_device);
- void OnPlatformDeviceRemoved(ScopedLibusbDeviceRef platform_device);
-@@ -95,7 +97,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(OS_FREEBSD)
- 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_extensions_browser_api_messaging_message__service.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_messaging_message__service.cc
index f3b70f52b89b..504c26000ec5 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_messaging_message__service.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_extensions_browser_api_messaging_message__service.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/extensions/browser/api/messaging/message_service.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/extensions/browser/api/messaging/message_service.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/extensions/browser/api/messaging/message_service.cc
-@@ -58,7 +58,7 @@ namespace {
+@@ -61,7 +61,7 @@ namespace {
const char kReceivingEndDoesntExistError[] =
"Could not establish connection. Receiving end does not exist.";
@@ -9,16 +9,16 @@
const char kMissingPermissionError[] =
"Access to native messaging requires nativeMessaging permission.";
const char kProhibitedByPoliciesError[] =
-@@ -318,7 +318,7 @@ void MessageService::OpenChannelToNativeApp(
- if (!source)
+@@ -382,7 +382,7 @@ void MessageService::OpenChannelToNativeApp(
+ if (!opener_port->IsValidPort())
return;
-#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
+#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
- content::WebContents* web_contents =
- content::WebContents::FromRenderFrameHost(source);
- ExtensionWebContentsObserver* extension_web_contents_observer =
-@@ -378,12 +378,12 @@ void MessageService::OpenChannelToNativeApp(
+ bool has_permission = extension->permissions_data()->HasAPIPermission(
+ APIPermission::kNativeMessaging);
+ if (!has_permission) {
+@@ -432,11 +432,11 @@ void MessageService::OpenChannelToNativeApp(
channel->opener->IncrementLazyKeepaliveCount();
AddChannel(std::move(channel), receiver_port_id);
@@ -26,10 +26,9 @@
+#else // !(defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD))
const char kNativeMessagingNotSupportedError[] =
"Native Messaging is not supported on this platform.";
- DispatchOnDisconnect(
- source, receiver_port_id, kNativeMessagingNotSupportedError);
+ opener_port->DispatchOnDisconnect(kNativeMessagingNotSupportedError);
-#endif // !(defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX))
+#endif // !(defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD))
}
- void MessageService::OpenChannelToTab(int source_process_id,
+ void MessageService::OpenChannelToTab(const ChannelEndpoint& source,
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_extensions_shell_app_shell__main__delegate.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_extensions_shell_app_shell__main__delegate.cc
index ab9743301fbd..2e31ad26e4b3 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_extensions_shell_app_shell__main__delegate.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_extensions_shell_app_shell__main__delegate.cc
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/extensions/shell/app/shell_main_delegate.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/extensions/shell/app/shell_main_delegate.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/extensions/shell/app/shell_main_delegate.cc
@@ -38,7 +38,7 @@
@@ -9,15 +9,6 @@
#include "base/nix/xdg_util.h"
#elif defined(OS_MACOSX)
#include "base/base_paths_mac.h"
-@@ -52,7 +52,7 @@
-
- namespace {
-
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS)
- extensions::ShellCrashReporterClient* GetCrashReporterClient() {
- static base::NoDestructor<extensions::ShellCrashReporterClient> instance;
- return instance.get();
@@ -70,7 +70,7 @@ base::FilePath GetDataPath() {
return cmd_line->GetSwitchValuePath(switches::kContentShellDataPath);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_external__vk__image__backing.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_external__vk__image__backing.cc
new file mode 100644
index 000000000000..3e9d359ab855
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_external__vk__image__backing.cc
@@ -0,0 +1,29 @@
+--- src/3rdparty/chromium/gpu/command_buffer/service/external_vk_image_backing.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/gpu/command_buffer/service/external_vk_image_backing.cc
+@@ -25,7 +25,7 @@
+ #include "gpu/vulkan/fuchsia/vulkan_fuchsia_ext.h"
+ #endif
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ #define GL_HANDLE_TYPE_OPAQUE_FD_EXT 0x9586
+ #endif
+
+@@ -451,7 +451,7 @@ ExternalVkImageBacking::ProduceGLTexture(SharedImageMa
+ #if defined(OS_FUCHSIA)
+ NOTIMPLEMENTED_LOG_ONCE();
+ return nullptr;
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_BSD)
+ GrVkImageInfo image_info;
+ bool result = backend_texture_.getVkImageInfo(&image_info);
+ DCHECK(result);
+@@ -520,7 +520,7 @@ ExternalVkImageBacking::ProduceGLTexture(SharedImageMa
+ }
+ return std::make_unique<ExternalVkImageGlRepresentation>(
+ manager, this, tracker, texture_, texture_->service_id());
+-#else // !defined(OS_LINUX) && !defined(OS_FUCHSIA)
++#else // !defined(OS_LINUX) && !defined(OS_FUCHSIA) && !defined(OS_BSD)
+ #error Unsupported OS
+ #endif
+ }
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_external__vk__image__gl__representation.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_external__vk__image__gl__representation.cc
new file mode 100644
index 000000000000..037402a320d5
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_command__buffer_service_external__vk__image__gl__representation.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/gpu/command_buffer/service/external_vk_image_gl_representation.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/gpu/command_buffer/service/external_vk_image_gl_representation.cc
+@@ -183,7 +183,7 @@ GLuint ExternalVkImageGlRepresentation::ImportVkSemaph
+ #if defined(OS_FUCHSIA)
+ NOTIMPLEMENTED_LOG_ONCE();
+ return 0;
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_BSD)
+ if (handle.vk_handle_type() !=
+ VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT) {
+ DLOG(ERROR) << "Importing semaphore handle of unexpected type:"
+@@ -198,7 +198,7 @@ GLuint ExternalVkImageGlRepresentation::ImportVkSemaph
+ fd.release());
+
+ return gl_semaphore;
+-#else // !defined(OS_FUCHSIA) && !defined(OS_LINUX)
++#else // !defined(OS_FUCHSIA) && !defined(OS_LINUX) && !defined(OS_BSD)
+ #error Unsupported OS
+ #endif
+ }
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.cc
index b6db145e4abc..9d480d9201f9 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_common_gpu__memory__buffer__support.cc
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/gpu/ipc/common/gpu_memory_buffer_support.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/gpu/ipc/common/gpu_memory_buffer_support.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/gpu/ipc/common/gpu_memory_buffer_support.cc
@@ -12,7 +12,7 @@
#include "gpu/ipc/common/gpu_memory_buffer_impl_io_surface.h"
@@ -6,10 +6,19 @@
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- #include "gpu/ipc/common/gpu_memory_buffer_impl_native_pixmap.h"
#include "ui/gfx/client_native_pixmap_factory.h"
#include "ui/gfx/linux/client_native_pixmap_factory_dmabuf.h"
-@@ -109,7 +109,7 @@ bool GpuMemoryBufferSupport::IsNativeGpuMemoryBufferCo
+ #endif
+@@ -22,7 +22,7 @@
+ #include "ui/ozone/public/ozone_platform.h"
+ #endif
+
+-#if defined(USE_OZONE) || defined(OS_LINUX)
++#if defined(USE_OZONE) || defined(OS_LINUX) || defined(OS_BSD)
+ #include "gpu/ipc/common/gpu_memory_buffer_impl_native_pixmap.h"
+ #endif
+
+@@ -111,7 +111,7 @@ bool GpuMemoryBufferSupport::IsNativeGpuMemoryBufferCo
#elif defined(USE_OZONE)
return ui::OzonePlatform::EnsureInstance()->IsNativePixmapConfigSupported(
format, usage);
@@ -18,12 +27,12 @@
return false; // TODO(julian.isorce): Add linux support.
#elif defined(OS_WIN)
switch (usage) {
-@@ -166,7 +166,7 @@ GpuMemoryBufferSupport::CreateGpuMemoryBufferImplFromH
+@@ -167,7 +167,7 @@ GpuMemoryBufferSupport::CreateGpuMemoryBufferImplFromH
return GpuMemoryBufferImplIOSurface::CreateFromHandle(
std::move(handle), size, format, usage, std::move(callback));
#endif
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
+-#if defined(OS_LINUX) || defined(USE_OZONE)
++#if defined(OS_LINUX) || defined(USE_OZONE) || defined(OS_BSD)
case gfx::NATIVE_PIXMAP:
return GpuMemoryBufferImplNativePixmap::CreateFromHandle(
client_native_pixmap_factory(), std::move(handle), size, format,
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__init.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__init.cc
index 71201f43c9e8..654a2c4eaa9e 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__init.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__init.cc
@@ -1,15 +1,24 @@
---- src/3rdparty/chromium/gpu/ipc/service/gpu_init.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/gpu/ipc/service/gpu_init.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/gpu/ipc/service/gpu_init.cc
-@@ -87,7 +87,7 @@ void InitializeDirectCompositionOverlaySupport(GPUInfo
+@@ -109,7 +109,7 @@ void InitializePlatformOverlaySettings(GPUInfo* gpu_in
+ #endif
}
- #endif // defined(OS_WIN)
-#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(IS_CHROMECAST)
+#if (defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(IS_CHROMECAST)) || defined(OS_BSD)
bool CanAccessNvidiaDeviceFile() {
bool res = true;
- base::ScopedBlockingCall scoped_blocking_call(base::BlockingType::WILL_BLOCK);
-@@ -129,7 +129,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL
+ base::ScopedBlockingCall scoped_blocking_call(FROM_HERE,
+@@ -120,7 +120,7 @@ bool CanAccessNvidiaDeviceFile() {
+ }
+ return res;
+ }
+-#endif // OS_LINUX && !OS_CHROMEOS && !IS_CHROMECAST
++#endif // (OS_LINUX && !OS_CHROMEOS && !IS_CHROMECAST) || OS_BSD
+
+ } // namespace
+
+@@ -152,7 +152,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL
// crash during feature collection.
gpu::SetKeysForCrashLogging(gpu_info_);
@@ -18,7 +27,7 @@
if (gpu_info_.gpu.vendor_id == 0x10de && // NVIDIA
gpu_info_.gpu.driver_vendor == "NVIDIA" && !CanAccessNvidiaDeviceFile())
return false;
-@@ -199,7 +199,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL
+@@ -228,7 +228,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL
sandbox_helper_->PreSandboxStartup();
bool attempted_startsandbox = false;
@@ -27,3 +36,83 @@
// On Chrome OS ARM Mali, GPU driver userspace creates threads when
// initializing a GL context, so start the sandbox early.
// TODO(zmo): Need to collect OS version before this.
+@@ -237,7 +237,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL
+ watchdog_thread_.get(), &gpu_info_, gpu_preferences_);
+ attempted_startsandbox = true;
+ }
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) && !defined(OS_BSD)
+
+ base::TimeTicks before_initialize_one_off = base::TimeTicks::Now();
+
+@@ -284,14 +284,14 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL
+ }
+ if (gl_initialized && use_swiftshader &&
+ gl::GetGLImplementation() != gl::kGLImplementationSwiftShaderGL) {
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ VLOG(1) << "Quit GPU process launch to fallback to SwiftShader cleanly "
+ << "on Linux";
+ return false;
+ #else
+ gl::init::ShutdownGL(true);
+ gl_initialized = false;
+-#endif // OS_LINUX
++#endif // OS_LINUX || OS_BSD
+ }
+ if (!gl_initialized)
+ gl_initialized = gl::init::InitializeGLNoExtensionsOneOff();
+@@ -317,7 +317,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL
+ command_line, gpu_feature_info_,
+ gpu_preferences_.disable_software_rasterizer, false);
+ if (use_swiftshader) {
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ VLOG(1) << "Quit GPU process launch to fallback to SwiftShader cleanly "
+ << "on Linux";
+ return false;
+@@ -328,7 +328,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL
+ << "failed";
+ return false;
+ }
+-#endif // OS_LINUX
++#endif // OS_LINUX || OS_BSD
+ }
+ }
+
+@@ -357,7 +357,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL
+
+ InitializePlatformOverlaySettings(&gpu_info_);
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ // Driver may create a compatibility profile context when collect graphics
+ // information on Linux platform. Try to collect graphics information
+ // based on core profile context after disabling platform extensions.
+@@ -376,7 +376,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL
+ return false;
+ }
+ }
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ if (use_swiftshader) {
+ AdjustInfoToSwiftShader();
+@@ -552,7 +552,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c
+
+ InitializePlatformOverlaySettings(&gpu_info_);
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ // Driver may create a compatibility profile context when collect graphics
+ // information on Linux platform. Try to collect graphics information
+ // based on core profile context after disabling platform extensions.
+@@ -572,7 +572,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c
+ }
+ }
+ }
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ if (use_swiftshader) {
+ AdjustInfoToSwiftShader();
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__memory__buffer__factory.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__memory__buffer__factory.cc
index 213b85ec434d..3869ff69bd0a 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__memory__buffer__factory.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__memory__buffer__factory.cc
@@ -1,20 +1,20 @@
---- src/3rdparty/chromium/gpu/ipc/service/gpu_memory_buffer_factory.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/gpu/ipc/service/gpu_memory_buffer_factory.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/gpu/ipc/service/gpu_memory_buffer_factory.cc
@@ -12,7 +12,7 @@
#include "gpu/ipc/service/gpu_memory_buffer_factory_io_surface.h"
#endif
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
+-#if defined(OS_LINUX) || defined(OS_FUCHSIA)
++#if defined(OS_LINUX) || defined(OS_FUCHSIA) || defined(OS_BSD)
#include "gpu/ipc/service/gpu_memory_buffer_factory_native_pixmap.h"
#endif
-@@ -33,7 +33,7 @@ GpuMemoryBufferFactory::CreateNativeType() {
- return base::WrapUnique(new GpuMemoryBufferFactoryIOSurface);
+@@ -34,7 +34,7 @@ GpuMemoryBufferFactory::CreateNativeType(
+ return std::make_unique<GpuMemoryBufferFactoryIOSurface>();
#elif defined(OS_ANDROID)
- return base::WrapUnique(new GpuMemoryBufferFactoryAndroidHardwareBuffer);
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_BSD)
- return base::WrapUnique(new GpuMemoryBufferFactoryNativePixmap);
+ return std::make_unique<GpuMemoryBufferFactoryAndroidHardwareBuffer>();
+-#elif defined(OS_LINUX) || defined(OS_FUCHSIA)
++#elif defined(OS_LINUX) || defined(OS_FUCHSIA) || defined(OS_BSD)
+ return std::make_unique<GpuMemoryBufferFactoryNativePixmap>(
+ vulkan_context_provider);
#elif defined(OS_WIN)
- return base::WrapUnique(new GpuMemoryBufferFactoryDXGI);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__watchdog__thread.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__watchdog__thread.cc
index 5afb2f5456ae..d70f4c7fcd62 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__watchdog__thread.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_ipc_service_gpu__watchdog__thread.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/gpu/ipc/service/gpu_watchdog_thread.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/gpu/ipc/service/gpu_watchdog_thread.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/gpu/ipc/service/gpu_watchdog_thread.cc
-@@ -51,8 +51,10 @@ const int kGpuTimeout = 10000;
+@@ -45,8 +45,10 @@ const int kGpuTimeout = 10000;
#endif
#if defined(USE_X11)
@@ -11,18 +11,21 @@
const unsigned char text[20] = "check";
#endif
-@@ -75,8 +77,10 @@ GpuWatchdogThread::GpuWatchdogThread()
+@@ -68,9 +70,12 @@ GpuWatchdogThreadImplV1::GpuWatchdogThreadImplV1()
+ ,
display_(nullptr),
window_(0),
- atom_(x11::None),
+- atom_(x11::None),
++ atom_(x11::None)
+#if !defined(OS_BSD)
- host_tty_(-1),
++ ,
+ host_tty_(-1)
#endif
+#endif
- weak_factory_(this) {
+ {
base::subtle::NoBarrier_Store(&awaiting_acknowledge_, false);
-@@ -91,7 +95,9 @@ GpuWatchdogThread::GpuWatchdogThread()
+@@ -85,7 +90,9 @@ GpuWatchdogThreadImplV1::GpuWatchdogThreadImplV1()
#endif
#if defined(USE_X11)
@@ -32,8 +35,8 @@
SetupXServer();
#endif
base::MessageLoopCurrent::Get()->AddTaskObserver(&task_observer_);
-@@ -238,8 +244,10 @@ GpuWatchdogThread::~GpuWatchdogThread() {
- power_monitor->RemoveObserver(this);
+@@ -230,8 +237,10 @@ GpuWatchdogThreadImplV1::~GpuWatchdogThreadImplV1() {
+ base::PowerMonitor::RemoveObserver(this);
#if defined(USE_X11)
+#if !defined(OS_BSD)
@@ -43,7 +46,7 @@
if (display_) {
DCHECK(window_);
XDestroyWindow(display_, window_);
-@@ -463,7 +471,7 @@ void GpuWatchdogThread::DeliberatelyTerminateToRecover
+@@ -431,7 +440,7 @@ void GpuWatchdogThreadImplV1::DeliberatelyTerminateToR
return;
#endif
@@ -52,7 +55,7 @@
// Don't crash if we're not on the TTY of our host X11 server.
int active_tty = GetActiveTTY();
if (host_tty_ != -1 && active_tty != -1 && host_tty_ != active_tty) {
-@@ -526,7 +534,9 @@ void GpuWatchdogThread::SetupXServer() {
+@@ -515,7 +524,9 @@ void GpuWatchdogThreadImplV1::SetupXServer() {
CopyFromParent, InputOutput, CopyFromParent, 0, nullptr);
atom_ = XInternAtom(display_, "CHECK", x11::False);
}
@@ -61,13 +64,13 @@
+#endif
}
- void GpuWatchdogThread::SetupXChangeProp() {
-@@ -627,7 +637,7 @@ base::ThreadTicks GpuWatchdogThread::GetWatchedThreadT
+ void GpuWatchdogThreadImplV1::SetupXChangeProp() {
+@@ -615,7 +626,7 @@ base::ThreadTicks GpuWatchdogThreadImplV1::GetWatchedT
}
#endif
-#if defined(USE_X11)
+#if defined(USE_X11) && !defined(OS_BSD)
- int GpuWatchdogThread::GetActiveTTY() const {
+ int GpuWatchdogThreadImplV1::GetActiveTTY() const {
char tty_string[8] = {0};
if (tty_file_ && !fseek(tty_file_, 0, SEEK_SET) &&
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.cc
new file mode 100644
index 000000000000..ea7ae91bcd4d
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.cc
@@ -0,0 +1,32 @@
+--- src/3rdparty/chromium/gpu/vulkan/vulkan_function_pointers.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/gpu/vulkan/vulkan_function_pointers.cc
+@@ -716,7 +716,7 @@ bool VulkanFunctionPointers::BindDeviceFunctionPointer
+ }
+ #endif // defined(OS_ANDROID)
+
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ if (gfx::HasExtension(enabled_extensions,
+ VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME)) {
+ vkGetSemaphoreFdKHRFn = reinterpret_cast<PFN_vkGetSemaphoreFdKHR>(
+@@ -735,9 +735,9 @@ bool VulkanFunctionPointers::BindDeviceFunctionPointer
+ return false;
+ }
+ }
+-#endif // defined(OS_LINUX) || defined(OS_ANDROID)
++#endif // defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ if (gfx::HasExtension(enabled_extensions,
+ VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME)) {
+ vkGetMemoryFdKHRFn = reinterpret_cast<PFN_vkGetMemoryFdKHR>(
+@@ -748,7 +748,7 @@ bool VulkanFunctionPointers::BindDeviceFunctionPointer
+ return false;
+ }
+ }
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ #if defined(OS_FUCHSIA)
+ if (gfx::HasExtension(enabled_extensions,
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.h
new file mode 100644
index 000000000000..7018ac682d2a
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_gpu_vulkan_vulkan__function__pointers.h
@@ -0,0 +1,42 @@
+--- src/3rdparty/chromium/gpu/vulkan/vulkan_function_pointers.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/gpu/vulkan/vulkan_function_pointers.h
+@@ -161,14 +161,14 @@ struct VulkanFunctionPointers {
+ vkGetAndroidHardwareBufferPropertiesANDROIDFn = nullptr;
+ #endif // defined(OS_ANDROID)
+
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHRFn = nullptr;
+ PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHRFn = nullptr;
+-#endif // defined(OS_LINUX) || defined(OS_ANDROID)
++#endif // defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ PFN_vkGetMemoryFdKHR vkGetMemoryFdKHRFn = nullptr;
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ #if defined(OS_FUCHSIA)
+ PFN_vkImportSemaphoreZirconHandleFUCHSIA
+@@ -342,16 +342,16 @@ struct VulkanFunctionPointers {
+ ->vkGetAndroidHardwareBufferPropertiesANDROIDFn
+ #endif // defined(OS_ANDROID)
+
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ #define vkGetSemaphoreFdKHR \
+ gpu::GetVulkanFunctionPointers()->vkGetSemaphoreFdKHRFn
+ #define vkImportSemaphoreFdKHR \
+ gpu::GetVulkanFunctionPointers()->vkImportSemaphoreFdKHRFn
+-#endif // defined(OS_LINUX) || defined(OS_ANDROID)
++#endif // defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ #define vkGetMemoryFdKHR gpu::GetVulkanFunctionPointers()->vkGetMemoryFdKHRFn
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ #if defined(OS_FUCHSIA)
+ #define vkImportSemaphoreZirconHandleFUCHSIA \
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__request__context__manager.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__request__context__manager.cc
index df342c253a1b..ad33b76c8e1f 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__request__context__manager.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__request__context__manager.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/headless/lib/browser/headless_request_context_manager.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/headless/lib/browser/headless_request_context_manager.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/headless/lib/browser/headless_request_context_manager.cc
-@@ -35,7 +35,7 @@ namespace headless {
+@@ -23,7 +23,7 @@ namespace headless {
namespace {
@@ -9,7 +9,7 @@
static char kProductName[] = "HeadlessChrome";
#endif
-@@ -81,7 +81,7 @@ net::NetworkTrafficAnnotationTag GetProxyConfigTraffic
+@@ -53,7 +53,7 @@ net::NetworkTrafficAnnotationTag GetProxyConfigTraffic
return traffic_annotation;
}
@@ -18,21 +18,12 @@
::network::mojom::CryptConfigPtr BuildCryptConfigOnce(
const base::FilePath& user_data_path) {
static bool done_once = false;
-@@ -290,7 +290,7 @@ HeadlessRequestContextManager::HeadlessRequestContextM
- proxy_config_monitor_ =
- std::make_unique<HeadlessProxyConfigMonitor>(proxy_monitor_task_runner);
+@@ -193,7 +193,7 @@ HeadlessRequestContextManager::HeadlessRequestContextM
+ proxy_config_monitor_ = std::make_unique<HeadlessProxyConfigMonitor>(
+ base::ThreadTaskRunnerHandle::Get());
}
-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
- crypt_config_ = BuildCryptConfigOnce(user_data_path_);
- if (network_service_enabled_ && crypt_config_)
- content::GetNetworkService()->SetCryptConfig(std::move(crypt_config_));
-@@ -366,7 +366,7 @@ void HeadlessRequestContextManager::InitializeOnIO() {
- std::move(protocol_handler.second));
- }
- protocol_handlers_.clear();
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
- if (crypt_config_) {
- content::GetNetworkServiceImpl()->SetCryptConfig(
- std::move(crypt_config_));
+ auto crypt_config = BuildCryptConfigOnce(user_data_path_);
+ if (crypt_config)
+ content::GetNetworkService()->SetCryptConfig(std::move(crypt_config));
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__request__context__manager.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__request__context__manager.h
deleted file mode 100644
index f116503eadc7..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_browser_headless__request__context__manager.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/headless/lib/browser/headless_request_context_manager.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/headless/lib/browser/headless_request_context_manager.h
-@@ -69,7 +69,7 @@ class HeadlessRequestContextManager {
- std::unique_ptr<HeadlessProxyConfigMonitor> proxy_config_monitor_;
- bool is_system_context_;
-
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
- ::network::mojom::CryptConfigPtr crypt_config_;
- #endif
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.cc
new file mode 100644
index 000000000000..79d6f794cfbe
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/headless/lib/headless_content_main_delegate.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/headless/lib/headless_content_main_delegate.cc
+@@ -324,7 +324,7 @@ int HeadlessContentMainDelegate::RunProcess(
+ }
+ #endif // !defined(CHROME_MULTIPLE_DLL_CHILD)
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ void SIGTERMProfilingShutdown(int signal) {
+ content::Profiling::Stop();
+ struct sigaction sigact;
+@@ -359,7 +359,7 @@ void HeadlessContentMainDelegate::ZygoteForked() {
+ breakpad::InitCrashReporter(process_type);
+ #endif
+ }
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ // static
+ HeadlessContentMainDelegate* HeadlessContentMainDelegate::GetInstance() {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.h
new file mode 100644
index 000000000000..9db0c5da6b17
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_headless_lib_headless__content__main__delegate.h
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/headless/lib/headless_content_main_delegate.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/headless/lib/headless_content_main_delegate.h
+@@ -58,7 +58,7 @@ class HEADLESS_EXPORT HeadlessContentMainDelegate
+
+ HeadlessBrowserImpl* browser() const { return browser_.get(); }
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ void ZygoteForked() override;
+ #endif
+
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_scopedfd__helper.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_scopedfd__helper.h
index 0ec69b2f13b7..d43f44cd4c09 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_scopedfd__helper.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_scopedfd__helper.h
@@ -1,14 +1,18 @@
---- src/3rdparty/chromium/media/base/scopedfd_helper.h.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/media/base/scopedfd_helper.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/media/base/scopedfd_helper.h
-@@ -14,14 +14,14 @@ namespace media {
- // since the only current user is V4L2 we are limiting the scope to OS_LINUX so
+@@ -11,17 +11,17 @@
+ namespace media {
+
+ // Theoretically, we can test on defined(OS_POSIX) || defined(OS_FUCHSIA), but
+-// since the only current user is V4L2 we are limiting the scope to OS_LINUX so
++// since the only current user is V4L2 we are limiting the scope to OS_LINUX || OS_BSD so
// the binary size does not inflate on non-using systems. Feel free to adapt
// this and BUILD.gn as our needs evolve.
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- // Return a new vector containing duplicates of |fds|, or an empty vector in
- // case of error.
+ // Return a new vector containing duplicates of |fds|, or PCHECKs in case of an
+ // error.
MEDIA_EXPORT std::vector<base::ScopedFD> DuplicateFDs(
const std::vector<base::ScopedFD>& fds);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.cc
index 9cdcb382598f..a3c666cca659 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/media/base/video_frame.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/media/base/video_frame.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/media/base/video_frame.cc
-@@ -53,7 +53,7 @@ static std::string StorageTypeToString(
+@@ -52,7 +52,7 @@ static std::string StorageTypeToString(
return "OWNED_MEMORY";
case VideoFrame::STORAGE_SHMEM:
return "SHMEM";
@@ -9,7 +9,7 @@
case VideoFrame::STORAGE_DMABUFS:
return "DMABUFS";
#endif
-@@ -68,7 +68,7 @@ static std::string StorageTypeToString(
+@@ -67,7 +67,7 @@ static std::string StorageTypeToString(
// static
bool VideoFrame::IsStorageTypeMappable(VideoFrame::StorageType storage_type) {
return
@@ -18,7 +18,25 @@
// This is not strictly needed but makes explicit that, at VideoFrame
// level, DmaBufs are not mappable from userspace.
storage_type != VideoFrame::STORAGE_DMABUFS &&
-@@ -461,7 +461,7 @@ scoped_refptr<VideoFrame> VideoFrame::WrapExternalYuva
+@@ -186,7 +186,7 @@ static base::Optional<VideoFrameLayout> GetDefaultLayo
+ return VideoFrameLayout::CreateWithPlanes(format, coded_size, planes);
+ }
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ // This class allows us to embed a vector<ScopedFD> into a scoped_refptr, and
+ // thus to have several VideoFrames share the same set of DMABUF FDs.
+ class VideoFrame::DmabufHolder
+@@ -204,7 +204,7 @@ class VideoFrame::DmabufHolder
+ friend class base::RefCountedThreadSafe<DmabufHolder>;
+ ~DmabufHolder() = default;
+ };
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ // static
+ bool VideoFrame::IsValidConfig(VideoPixelFormat format,
+@@ -510,7 +510,7 @@ scoped_refptr<VideoFrame> VideoFrame::WrapExternalYuva
return frame;
}
@@ -27,16 +45,16 @@
// static
scoped_refptr<VideoFrame> VideoFrame::WrapExternalDmabufs(
const VideoFrameLayout& layout,
-@@ -592,7 +592,7 @@ scoped_refptr<VideoFrame> VideoFrame::WrapVideoFrame(
+@@ -642,7 +642,7 @@ scoped_refptr<VideoFrame> VideoFrame::WrapVideoFrame(
}
}
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- // If there are any |dmabuf_fds_| plugged in, we should duplicate them.
- if (frame->storage_type() == STORAGE_DMABUFS) {
- wrapping_frame->dmabuf_fds_ = DuplicateFDs(frame->dmabuf_fds_);
-@@ -917,7 +917,7 @@ size_t VideoFrame::shared_memory_offset() const {
+ DCHECK(frame.dmabuf_fds_);
+ // If there are any |dmabuf_fds_| plugged in, we should refer them too.
+ wrapping_frame->dmabuf_fds_ = frame.dmabuf_fds_;
+@@ -960,7 +960,7 @@ size_t VideoFrame::shared_memory_offset() const {
return shared_memory_offset_;
}
@@ -45,3 +63,12 @@
const std::vector<base::ScopedFD>& VideoFrame::DmabufFds() const {
DCHECK_EQ(storage_type_, STORAGE_DMABUFS);
+@@ -1112,7 +1112,7 @@ VideoFrame::VideoFrame(const VideoFrameLayout& layout,
+ visible_rect_(Intersection(visible_rect, gfx::Rect(layout.coded_size()))),
+ natural_size_(natural_size),
+ shared_memory_offset_(0),
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ dmabuf_fds_(base::MakeRefCounted<DmabufHolder>()),
+ #endif
+ timestamp_(timestamp),
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.h
index 0c3fa84add05..3ec6e468dc62 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_base_video__frame.h
@@ -1,6 +1,18 @@
---- src/3rdparty/chromium/media/base/video_frame.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/media/base/video_frame.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/media/base/video_frame.h
-@@ -71,7 +71,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte
+@@ -42,9 +42,9 @@
+ #include "base/mac/scoped_cftyperef.h"
+ #endif // defined(OS_MACOSX)
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ #include "base/files/scoped_file.h"
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ namespace media {
+
+@@ -79,7 +79,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte
STORAGE_UNOWNED_MEMORY = 2, // External, non owned data pointers.
STORAGE_OWNED_MEMORY = 3, // VideoFrame has allocated its own data buffer.
STORAGE_SHMEM = 4, // Pixels are backed by Shared Memory.
@@ -9,7 +21,7 @@
// TODO(mcasas): Consider turning this type into STORAGE_NATIVE
// based on the idea of using this same enum value for both DMA
// buffers on Linux and CVPixelBuffers on Mac (which currently use
-@@ -245,7 +245,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte
+@@ -273,7 +273,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte
uint8_t* a_data,
base::TimeDelta timestamp);
@@ -18,7 +30,7 @@
// Wraps provided dmabufs
// (https://www.kernel.org/doc/html/latest/driver-api/dma-buf.html) with a
// VideoFrame. The frame will take ownership of |dmabuf_fds|, and will
-@@ -430,7 +430,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte
+@@ -469,7 +469,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte
// Returns the offset into the shared memory where the frame data begins.
size_t shared_memory_offset() const;
@@ -27,12 +39,12 @@
// Returns a vector containing the backing DmaBufs for this frame. The number
// of returned DmaBufs will be equal or less than the number of planes of
// the frame. If there are less, this means that the last FD contains the
-@@ -624,7 +624,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte
+@@ -672,7 +672,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte
// memory.
size_t shared_memory_offset_;
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
+ class DmabufHolder;
+
// Dmabufs for the frame, used when storage is STORAGE_DMABUFS. Size is either
- // equal or less than the number of planes of the frame. If it is less, then
- // the memory area represented by the last FD contains the remaining planes.
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__factory__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__factory__linux.cc
index 180456cffe95..4e32bacd9fd9 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__factory__linux.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_linux_video__capture__device__factory__linux.cc
@@ -1,32 +1,10 @@
---- src/3rdparty/chromium/media/capture/video/linux/video_capture_device_factory_linux.cc.orig 2019-03-01 17:04:22 UTC
+--- src/3rdparty/chromium/media/capture/video/linux/video_capture_device_factory_linux.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/media/capture/video/linux/video_capture_device_factory_linux.cc
-@@ -259,6 +259,7 @@ bool VideoCaptureDeviceFactoryLinux::HasUsableFormats(
- if (!(capabilities & V4L2_CAP_VIDEO_CAPTURE))
- return false;
-
-+#if !defined(OS_FREEBSD)
- const std::vector<uint32_t>& usable_fourccs =
- VideoCaptureDeviceLinux::GetListOfUsableFourCCs(false);
- v4l2_fmtdesc fmtdesc = {};
-@@ -267,6 +268,7 @@ bool VideoCaptureDeviceFactoryLinux::HasUsableFormats(
- if (base::ContainsValue(usable_fourccs, fmtdesc.pixelformat))
- return true;
- }
-+#endif
-
- DVLOG(1) << "No usable formats found";
- return false;
-@@ -312,9 +314,13 @@ void VideoCaptureDeviceFactoryLinux::GetSupportedForma
- v4l2_format.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
- for (; DoIoctl(fd, VIDIOC_ENUM_FMT, &v4l2_format) == 0; ++v4l2_format.index) {
- VideoCaptureFormat supported_format;
-+#if !defined(OS_FREEBSD)
+@@ -315,6 +315,7 @@ void VideoCaptureDeviceFactoryLinux::GetSupportedForma
supported_format.pixel_format =
VideoCaptureDeviceLinux::V4l2FourCcToChromiumPixelFormat(
v4l2_format.pixelformat);
-+#else
+ supported_format.pixel_format = PIXEL_FORMAT_UNKNOWN;
-+#endif
if (supported_format.pixel_format == PIXEL_FORMAT_UNKNOWN)
continue;
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
index c1ba205f2799..eab705865f45 100644
--- 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
@@ -1,15 +1,17 @@
---- src/3rdparty/chromium/media/capture/video/linux/video_capture_device_linux.cc.orig 2019-03-01 17:04:22 UTC
+--- src/3rdparty/chromium/media/capture/video/linux/video_capture_device_linux.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/media/capture/video/linux/video_capture_device_linux.cc
-@@ -15,7 +15,7 @@
-
- #if defined(OS_OPENBSD)
+@@ -17,8 +17,10 @@
#include <sys/videoio.h>
--#else
-+#elif !defined(OS_FREEBSD)
+ #else
#include <linux/videodev2.h>
++#if !defined(OS_FREEBSD)
#include <linux/version.h>
#endif
-@@ -31,17 +31,18 @@ int TranslatePowerLineFrequencyToV4L2(PowerLineFrequen
++#endif
+
+ namespace media {
+
+@@ -31,12 +33,12 @@ int TranslatePowerLineFrequencyToV4L2(PowerLineFrequen
case PowerLineFrequency::FREQUENCY_60HZ:
return V4L2_CID_POWER_LINE_FREQUENCY_60HZ;
default:
@@ -26,59 +28,3 @@
}
}
- } // namespace
-
-+#if !defined(OS_FREEBSD)
- // Translates Video4Linux pixel formats to Chromium pixel formats.
- // static
- VideoPixelFormat VideoCaptureDeviceLinux::V4l2FourCcToChromiumPixelFormat(
-@@ -55,6 +56,7 @@ std::vector<uint32_t> VideoCaptureDeviceLinux::GetList
- bool favour_mjpeg) {
- return V4L2CaptureDelegate::GetListOfUsableFourCcs(favour_mjpeg);
- }
-+#endif // !defined(OS_FREEBSD)
-
- VideoCaptureDeviceLinux::VideoCaptureDeviceLinux(
- scoped_refptr<V4L2CaptureDevice> v4l2,
-@@ -73,6 +75,7 @@ VideoCaptureDeviceLinux::~VideoCaptureDeviceLinux() {
- void VideoCaptureDeviceLinux::AllocateAndStart(
- const VideoCaptureParams& params,
- std::unique_ptr<VideoCaptureDevice::Client> client) {
-+#if !defined(OS_FREEBSD)
- DCHECK(!capture_impl_);
- if (v4l2_thread_.IsRunning())
- return; // Wrong state.
-@@ -100,9 +103,11 @@ void VideoCaptureDeviceLinux::AllocateAndStart(
- for (auto& request : photo_requests_queue_)
- v4l2_thread_.task_runner()->PostTask(FROM_HERE, std::move(request));
- photo_requests_queue_.clear();
-+#endif // !defined(OS_FREEBSD)
- }
-
- void VideoCaptureDeviceLinux::StopAndDeAllocate() {
-+#if !defined(OS_FREEBSD)
- if (!v4l2_thread_.IsRunning())
- return; // Wrong state.
- v4l2_thread_.task_runner()->PostTask(
-@@ -112,6 +117,7 @@ void VideoCaptureDeviceLinux::StopAndDeAllocate() {
- v4l2_thread_.Stop();
-
- capture_impl_ = nullptr;
-+#endif // !defined(OS_FREEBSD)
- }
-
- void VideoCaptureDeviceLinux::TakePhoto(TakePhotoCallback callback) {
-@@ -154,11 +160,13 @@ void VideoCaptureDeviceLinux::SetPhotoOptions(
- }
-
- void VideoCaptureDeviceLinux::SetRotation(int rotation) {
-+#if !defined(OS_FREEBSD)
- if (v4l2_thread_.IsRunning()) {
- v4l2_thread_.task_runner()->PostTask(
- FROM_HERE, base::BindOnce(&V4L2CaptureDelegate::SetRotation,
- capture_impl_->GetWeakPtr(), rotation));
- }
-+#endif // !defined(OS_FREEBSD)
- }
-
- } // namespace media
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__buffer__pool__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__buffer__pool__impl.cc
new file mode 100644
index 000000000000..0e5cdf2d9dba
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__buffer__pool__impl.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/media/capture/video/video_capture_buffer_pool_impl.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/media/capture/video/video_capture_buffer_pool_impl.cc
+@@ -58,7 +58,7 @@ VideoCaptureBufferPoolImpl::CreateSharedMemoryViaRawFi
+ int buffer_id) {
+ // This requires platforms where base::SharedMemoryHandle is backed by a
+ // file descriptor.
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ base::AutoLock lock(lock_);
+
+ VideoCaptureBufferTracker* tracker = GetTracker(buffer_id);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__client.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__client.cc
index 696404fb1b21..d0b040943296 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__client.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_capture_video_video__capture__device__client.cc
@@ -1,11 +1,11 @@
---- src/3rdparty/chromium/media/capture/video/video_capture_device_client.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/media/capture/video/video_capture_device_client.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/media/capture/video/video_capture_device_client.cc
-@@ -238,7 +238,7 @@ void VideoCaptureDeviceClient::OnIncomingCapturedData(
+@@ -308,7 +308,7 @@ void VideoCaptureDeviceClient::OnIncomingCapturedData(
// see http://linuxtv.org/downloads/v4l-dvb-apis/packed-rgb.html.
// Windows RGB24 defines blue at lowest byte,
// see https://msdn.microsoft.com/en-us/library/windows/desktop/dd407253
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- origin_colorspace = libyuv::FOURCC_RAW;
+ fourcc_format = libyuv::FOURCC_RAW;
#elif defined(OS_WIN)
- origin_colorspace = libyuv::FOURCC_24BG;
+ fourcc_format = libyuv::FOURCC_24BG;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_gpu_libyuv__image__processor.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_gpu_libyuv__image__processor.cc
new file mode 100644
index 000000000000..0f66833092f1
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_gpu_libyuv__image__processor.cc
@@ -0,0 +1,38 @@
+--- src/3rdparty/chromium/media/gpu/libyuv_image_processor.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/media/gpu/libyuv_image_processor.cc
+@@ -91,7 +91,7 @@ std::unique_ptr<LibYUVImageProcessor> LibYUVImageProce
+ // LibYUVImageProcessor supports only memory-based video frame for input.
+ VideoFrame::StorageType input_storage_type = VideoFrame::STORAGE_UNKNOWN;
+ for (auto input_type : input_config.preferred_storage_types) {
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ if (input_type == VideoFrame::STORAGE_DMABUFS) {
+ video_frame_mapper = VideoFrameMapperFactory::CreateMapper(
+ input_config.layout.format(), true);
+@@ -100,7 +100,7 @@ std::unique_ptr<LibYUVImageProcessor> LibYUVImageProce
+ break;
+ }
+ }
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ if (VideoFrame::IsStorageTypeMappable(input_type)) {
+ input_storage_type = input_type;
+@@ -203,7 +203,7 @@ void LibYUVImageProcessor::ProcessTask(scoped_refptr<V
+ FrameReadyCB cb) {
+ DCHECK(process_thread_.task_runner()->BelongsToCurrentThread());
+ DVLOGF(4);
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ if (input_frame->storage_type() == VideoFrame::STORAGE_DMABUFS) {
+ DCHECK_NE(video_frame_mapper_.get(), nullptr);
+ input_frame = video_frame_mapper_->Map(std::move(input_frame));
+@@ -213,7 +213,7 @@ void LibYUVImageProcessor::ProcessTask(scoped_refptr<V
+ return;
+ }
+ }
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ int res = DoConversion(input_frame.get(), output_frame.get());
+ if (res != 0) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_gpu_linux_platform__video__frame__utils.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_gpu_linux_platform__video__frame__utils.cc
new file mode 100644
index 000000000000..a75d181da367
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_gpu_linux_platform__video__frame__utils.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/media/gpu/linux/platform_video_frame_utils.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/media/gpu/linux/platform_video_frame_utils.cc
+@@ -121,7 +121,7 @@ gfx::GpuMemoryBufferHandle CreateGpuMemoryBufferHandle
+ DCHECK(video_frame);
+
+ gfx::GpuMemoryBufferHandle handle;
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ handle.type = gfx::NATIVE_PIXMAP;
+
+ std::vector<base::ScopedFD> duped_fds =
+@@ -136,7 +136,7 @@ gfx::GpuMemoryBufferHandle CreateGpuMemoryBufferHandle
+ }
+ #else
+ NOTREACHED();
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+ return handle;
+ }
+
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_clients_mojo__video__encode__accelerator.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_clients_mojo__video__encode__accelerator.cc
new file mode 100644
index 000000000000..19e66c2c15fe
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_clients_mojo__video__encode__accelerator.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/media/mojo/clients/mojo_video_encode_accelerator.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/media/mojo/clients/mojo_video_encode_accelerator.cc
+@@ -124,7 +124,7 @@ void MojoVideoEncodeAccelerator::Encode(scoped_refptr<
+ frame->layout().num_planes());
+ DCHECK(vea_.is_bound());
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ if (frame->storage_type() == VideoFrame::STORAGE_DMABUFS) {
+ DCHECK(frame->HasDmaBufs());
+ vea_->Encode(
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_interfaces_video__frame__struct__traits.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_interfaces_video__frame__struct__traits.cc
new file mode 100644
index 000000000000..c3237c78fb2d
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_interfaces_video__frame__struct__traits.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/media/mojo/interfaces/video_frame_struct_traits.cc.orig 2020-04-05 20:03:42 UTC
++++ src/3rdparty/chromium/media/mojo/interfaces/video_frame_struct_traits.cc
+@@ -49,7 +49,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData(
+ mojo_frame->PlaneOffset(media::VideoFrame::kVPlane)));
+ }
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ if (input->storage_type() == media::VideoFrame::STORAGE_DMABUFS) {
+ std::vector<mojo::ScopedHandle> dmabuf_fds;
+
+@@ -142,7 +142,7 @@ bool StructTraits<media::mojom::VideoFrameDataView,
+ shared_buffer_data.u_offset(), shared_buffer_data.v_offset(),
+ shared_buffer_data.y_stride(), shared_buffer_data.u_stride(),
+ shared_buffer_data.v_stride(), timestamp);
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ } else if (data.is_dmabuf_data()) {
+ media::mojom::DmabufVideoFrameDataDataView dmabuf_data;
+ data.GetDmabufDataDataView(&dmabuf_data);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_services_gpu__mojo__media__client.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_services_gpu__mojo__media__client.cc
index 8df8a7661d70..86dfa5f56855 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_services_gpu__mojo__media__client.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_media_mojo_services_gpu__mojo__media__client.cc
@@ -1,20 +1,20 @@
---- src/3rdparty/chromium/media/mojo/services/gpu_mojo_media_client.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/media/mojo/services/gpu_mojo_media_client.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/media/mojo/services/gpu_mojo_media_client.cc
-@@ -55,7 +55,7 @@ namespace media {
+@@ -65,7 +65,7 @@ namespace media {
namespace {
#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_MACOSX) || \
- defined(OS_WIN) || defined(OS_LINUX)
+ defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD)
gpu::CommandBufferStub* GetCommandBufferStub(
+ scoped_refptr<base::SingleThreadTaskRunner> gpu_task_runner,
base::WeakPtr<MediaGpuChannelManager> media_gpu_channel_manager,
- base::UnguessableToken channel_token,
-@@ -172,7 +172,7 @@ std::unique_ptr<VideoDecoder> GpuMojoMediaClient::Crea
- std::make_unique<VideoFrameFactoryImpl>(gpu_task_runner_,
- std::move(get_stub_cb)));
- #elif defined(OS_CHROMEOS) || defined(OS_MACOSX) || defined(OS_WIN) || \
-- defined(OS_LINUX)
-+ defined(OS_LINUX) || defined(OS_BSD)
- std::unique_ptr<VideoDecoder> vda_video_decoder = VdaVideoDecoder::Create(
- task_runner, gpu_task_runner_, media_log->Clone(), target_color_space,
- gpu_preferences_, gpu_workarounds_,
+@@ -250,7 +250,7 @@ std::unique_ptr<VideoDecoder> GpuMojoMediaClient::Crea
+ command_buffer_id->route_id));
+ }
+
+-#elif defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_LINUX)
++#elif defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD)
+ video_decoder = VdaVideoDecoder::Create(
+ task_runner, gpu_task_runner_, media_log->Clone(), target_color_space,
+ gpu_preferences_, gpu_workarounds_,
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_mojo_public_js_mojo__bindings__resources.grd b/www/qt5-webengine/files/patch-src_3rdparty_chromium_mojo_public_js_mojo__bindings__resources.grd
index 00ee419249be..a06c736cb67c 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_mojo_public_js_mojo__bindings__resources.grd
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_mojo_public_js_mojo__bindings__resources.grd
@@ -1,11 +1,11 @@
---- src/3rdparty/chromium/mojo/public/js/mojo_bindings_resources.grd.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/mojo/public/js/mojo_bindings_resources.grd.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/mojo/public/js/mojo_bindings_resources.grd
-@@ -23,7 +23,7 @@
+@@ -60,7 +60,7 @@
use_base_dir="false"
type="BINDATA"
compress="gzip" />
- <if expr="is_win or is_macosx or is_linux">
+ <if expr="is_win or is_macosx or is_posix">
- <include name="IDR_MOJO_TIME_MOJOM_JS"
- file="${root_gen_dir}/mojo/public/mojom/base/time.mojom.js"
+ <include name="IDR_MOJO_TIME_MOJOM_HTML"
+ file="${root_gen_dir}/mojo/public/mojom/base/time.mojom.html"
use_base_dir="false"
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_BUILD.gn
index b1a5ce23aaef..93a361d8bebf 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_BUILD.gn
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_BUILD.gn
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/net/BUILD.gn.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/net/BUILD.gn.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/net/BUILD.gn
-@@ -97,7 +97,7 @@ net_configs = [
+@@ -105,7 +105,7 @@ net_configs = [
"//build/config/compiler:wexit_time_destructors",
]
@@ -9,7 +9,16 @@
net_configs += [ "//build/config/linux:libresolv" ]
}
-@@ -1900,7 +1900,7 @@ component("net") {
+@@ -1913,7 +1913,7 @@ component("net") {
+ }
+ }
+
+- if (is_android || is_chromeos) {
++ if (is_android || is_chromeos || is_bsd) {
+ sources += [
+ "base/network_change_notifier_posix.cc",
+ "base/network_change_notifier_posix.h",
+@@ -1946,7 +1946,7 @@ component("net") {
}
# Use getifaddrs() on POSIX platforms, except Linux and Android.
@@ -18,7 +27,7 @@
sources += [
"base/network_interfaces_getifaddrs.cc",
"base/network_interfaces_getifaddrs.h",
-@@ -1993,6 +1993,16 @@ component("net") {
+@@ -2040,6 +2040,16 @@ component("net") {
]
sources -= [ "disk_cache/blockfile/file_posix.cc" ]
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_address__tracker__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_address__tracker__linux.cc
index 05a5ea5dc336..65ddb377dfb4 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_address__tracker__linux.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_base_address__tracker__linux.cc
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/net/base/address_tracker_linux.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/net/base/address_tracker_linux.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/net/base/address_tracker_linux.cc
@@ -21,96 +21,10 @@
namespace net {
@@ -99,233 +99,50 @@
}
AddressTrackerLinux::AddressTrackerLinux()
-@@ -153,93 +67,8 @@ AddressTrackerLinux::~AddressTrackerLinux() {
- }
+@@ -147,6 +61,7 @@ AddressTrackerLinux::AddressTrackerLinux(
+ AddressTrackerLinux::~AddressTrackerLinux() = default;
void AddressTrackerLinux::Init() {
-- netlink_fd_ = socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE);
-- if (netlink_fd_ < 0) {
-- PLOG(ERROR) << "Could not create NETLINK socket";
-- AbortAndForceOnline();
-- return;
-- }
--
-- int rv;
--
-- if (tracking_) {
-- // Request notifications.
-- struct sockaddr_nl addr = {};
-- addr.nl_family = AF_NETLINK;
-- addr.nl_pid = getpid();
-- // TODO(szym): Track RTMGRP_LINK as well for ifi_type,
-- // http://crbug.com/113993
-- addr.nl_groups =
-- RTMGRP_IPV4_IFADDR | RTMGRP_IPV6_IFADDR | RTMGRP_NOTIFY | RTMGRP_LINK;
-- rv = bind(
-- netlink_fd_, reinterpret_cast<struct sockaddr*>(&addr), sizeof(addr));
-- if (rv < 0) {
-- PLOG(ERROR) << "Could not bind NETLINK socket";
-- AbortAndForceOnline();
-- return;
-- }
-- }
--
-- // Request dump of addresses.
-- struct sockaddr_nl peer = {};
-- peer.nl_family = AF_NETLINK;
--
-- struct {
-- struct nlmsghdr header;
-- struct rtgenmsg msg;
-- } request = {};
--
-- request.header.nlmsg_len = NLMSG_LENGTH(sizeof(request.msg));
-- request.header.nlmsg_type = RTM_GETADDR;
-- request.header.nlmsg_flags = NLM_F_REQUEST | NLM_F_DUMP;
-- request.header.nlmsg_pid = getpid();
-- request.msg.rtgen_family = AF_UNSPEC;
--
-- rv = HANDLE_EINTR(sendto(netlink_fd_, &request, request.header.nlmsg_len,
-- 0, reinterpret_cast<struct sockaddr*>(&peer),
-- sizeof(peer)));
-- if (rv < 0) {
-- PLOG(ERROR) << "Could not send NETLINK request";
-- AbortAndForceOnline();
-- return;
-- }
--
-- // Consume pending message to populate the AddressMap, but don't notify.
-- // Sending another request without first reading responses results in EBUSY.
-- bool address_changed;
-- bool link_changed;
-- bool tunnel_changed;
-- ReadMessages(&address_changed, &link_changed, &tunnel_changed);
--
-- // Request dump of link state
-- request.header.nlmsg_type = RTM_GETLINK;
--
-- rv = HANDLE_EINTR(sendto(netlink_fd_, &request, request.header.nlmsg_len, 0,
-- reinterpret_cast<struct sockaddr*>(&peer),
-- sizeof(peer)));
-- if (rv < 0) {
-- PLOG(ERROR) << "Could not send NETLINK request";
-- AbortAndForceOnline();
-- return;
-- }
--
-- // Consume pending message to populate links_online_, but don't notify.
-- ReadMessages(&address_changed, &link_changed, &tunnel_changed);
-- {
-- AddressTrackerAutoLock lock(*this, connection_type_lock_);
-- connection_type_initialized_ = true;
-- connection_type_initialized_cv_.Broadcast();
-- }
--
-- if (tracking_) {
-- rv = base::MessageLoopCurrentForIO::Get()->WatchFileDescriptor(
-- netlink_fd_, true, base::MessagePumpForIO::WATCH_READ, &watcher_, this);
-- if (rv < 0) {
-- PLOG(ERROR) << "Could not watch NETLINK socket";
-- AbortAndForceOnline();
-- return;
-- }
-- }
-+NOTIMPLEMENTED();
-+AbortAndForceOnline();
++#if !defined(OS_FREEBSD)
+ netlink_fd_.reset(socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE));
+ if (!netlink_fd_.is_valid()) {
+ PLOG(ERROR) << "Could not create NETLINK socket";
+@@ -242,6 +157,7 @@ void AddressTrackerLinux::AbortAndForceOnline() {
+ connection_type_initialized_cv_.Broadcast();
}
- void AddressTrackerLinux::AbortAndForceOnline() {
-@@ -250,25 +79,6 @@ void AddressTrackerLinux::AbortAndForceOnline() {
- connection_type_initialized_cv_.Broadcast();
++#if !defined(OS_BSD)
+ AddressTrackerLinux::AddressMap AddressTrackerLinux::GetAddressMap() const {
+ AddressTrackerAutoLock lock(*this, address_map_lock_);
+ return address_map_;
+@@ -260,6 +176,7 @@ bool AddressTrackerLinux::IsInterfaceIgnored(int inter
+ const char* interface_name = get_interface_name_(interface_index, buf);
+ return ignored_interfaces_.find(interface_name) != ignored_interfaces_.end();
}
++#endif // !OS_BSD
--AddressTrackerLinux::AddressMap AddressTrackerLinux::GetAddressMap() const {
-- AddressTrackerAutoLock lock(*this, address_map_lock_);
-- return address_map_;
--}
--
--std::unordered_set<int> AddressTrackerLinux::GetOnlineLinks() const {
-- AddressTrackerAutoLock lock(*this, online_links_lock_);
-- return online_links_;
--}
--
--bool AddressTrackerLinux::IsInterfaceIgnored(int interface_index) const {
-- if (ignored_interfaces_.empty())
-- return false;
--
-- char buf[IFNAMSIZ] = {0};
-- const char* interface_name = get_interface_name_(interface_index, buf);
-- return ignored_interfaces_.find(interface_name) != ignored_interfaces_.end();
--}
--
NetworkChangeNotifier::ConnectionType
AddressTrackerLinux::GetCurrentConnectionType() {
- // http://crbug.com/125097
-@@ -326,102 +136,7 @@ void AddressTrackerLinux::HandleMessage(char* buffer,
+@@ -318,6 +235,7 @@ void AddressTrackerLinux::HandleMessage(char* buffer,
bool* address_changed,
bool* link_changed,
bool* tunnel_changed) {
-- DCHECK(buffer);
-- for (struct nlmsghdr* header = reinterpret_cast<struct nlmsghdr*>(buffer);
-- NLMSG_OK(header, length);
-- header = NLMSG_NEXT(header, length)) {
-- switch (header->nlmsg_type) {
-- case NLMSG_DONE:
-- return;
-- case NLMSG_ERROR: {
-- const struct nlmsgerr* msg =
-- reinterpret_cast<struct nlmsgerr*>(NLMSG_DATA(header));
-- LOG(ERROR) << "Unexpected netlink error " << msg->error << ".";
-- } return;
-- case RTM_NEWADDR: {
-- IPAddress address;
-- bool really_deprecated;
-- struct ifaddrmsg* msg =
-- reinterpret_cast<struct ifaddrmsg*>(NLMSG_DATA(header));
-- if (IsInterfaceIgnored(msg->ifa_index))
-- break;
-- if (GetAddress(header, &address, &really_deprecated)) {
-- AddressTrackerAutoLock lock(*this, address_map_lock_);
-- // Routers may frequently (every few seconds) output the IPv6 ULA
-- // prefix which can cause the linux kernel to frequently output two
-- // back-to-back messages, one without the deprecated flag and one with
-- // the deprecated flag but both with preferred lifetimes of 0. Avoid
-- // interpretting this as an actual change by canonicalizing the two
-- // messages by setting the deprecated flag based on the preferred
-- // lifetime also. http://crbug.com/268042
-- if (really_deprecated)
-- msg->ifa_flags |= IFA_F_DEPRECATED;
-- // Only indicate change if the address is new or ifaddrmsg info has
-- // changed.
-- auto it = address_map_.find(address);
-- if (it == address_map_.end()) {
-- address_map_.insert(it, std::make_pair(address, *msg));
-- *address_changed = true;
-- } else if (memcmp(&it->second, msg, sizeof(*msg))) {
-- it->second = *msg;
-- *address_changed = true;
-- }
-- }
-- } break;
-- case RTM_DELADDR: {
-- IPAddress address;
-- const struct ifaddrmsg* msg =
-- reinterpret_cast<struct ifaddrmsg*>(NLMSG_DATA(header));
-- if (IsInterfaceIgnored(msg->ifa_index))
-- break;
-- if (GetAddress(header, &address, NULL)) {
-- AddressTrackerAutoLock lock(*this, address_map_lock_);
-- if (address_map_.erase(address))
-- *address_changed = true;
-- }
-- } break;
-- case RTM_NEWLINK: {
-- const struct ifinfomsg* msg =
-- reinterpret_cast<struct ifinfomsg*>(NLMSG_DATA(header));
-- if (IsInterfaceIgnored(msg->ifi_index))
-- break;
-- if (IgnoreWirelessChange(header, msg)) {
-- VLOG(2) << "Ignoring RTM_NEWLINK message";
-- break;
-- }
-- if (!(msg->ifi_flags & IFF_LOOPBACK) && (msg->ifi_flags & IFF_UP) &&
-- (msg->ifi_flags & IFF_LOWER_UP) && (msg->ifi_flags & IFF_RUNNING)) {
-- AddressTrackerAutoLock lock(*this, online_links_lock_);
-- if (online_links_.insert(msg->ifi_index).second) {
-- *link_changed = true;
-- if (IsTunnelInterface(msg->ifi_index))
-- *tunnel_changed = true;
-- }
-- } else {
-- AddressTrackerAutoLock lock(*this, online_links_lock_);
-- if (online_links_.erase(msg->ifi_index)) {
-- *link_changed = true;
-- if (IsTunnelInterface(msg->ifi_index))
-- *tunnel_changed = true;
-- }
-- }
-- } break;
-- case RTM_DELLINK: {
-- const struct ifinfomsg* msg =
-- reinterpret_cast<struct ifinfomsg*>(NLMSG_DATA(header));
-- if (IsInterfaceIgnored(msg->ifi_index))
-- break;
-- AddressTrackerAutoLock lock(*this, online_links_lock_);
-- if (online_links_.erase(msg->ifi_index)) {
-- *link_changed = true;
-- if (IsTunnelInterface(msg->ifi_index))
-- *tunnel_changed = true;
-- }
-- } break;
-- default:
-- break;
-- }
-- }
++#if !defined(OS_FREEBSD)
+ DCHECK(buffer);
+ for (struct nlmsghdr* header = reinterpret_cast<struct nlmsghdr*>(buffer);
+ NLMSG_OK(header, length);
+@@ -414,6 +332,10 @@ void AddressTrackerLinux::HandleMessage(char* buffer,
+ break;
+ }
+ }
++#else // !OS_FREEBSD
+ NOTIMPLEMENTED();
++ AbortAndForceOnline();
++#endif // !OS_FREEBSD
}
- void AddressTrackerLinux::OnFileCanReadWithoutBlocking(int fd) {
-@@ -458,31 +173,7 @@ bool AddressTrackerLinux::IsTunnelInterfaceName(const
+ void AddressTrackerLinux::OnFileCanReadWithoutBlocking() {
+@@ -441,31 +363,7 @@ bool AddressTrackerLinux::IsTunnelInterfaceName(const
}
void AddressTrackerLinux::UpdateCurrentConnectionType() {
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
index b4a69b80d847..b2e9f74aa12f 100644
--- 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
@@ -1,28 +1,12 @@
---- src/3rdparty/chromium/net/base/address_tracker_linux.h.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/net/base/address_tracker_linux.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/net/base/address_tracker_linux.h
-@@ -6,10 +6,12 @@
- #define NET_BASE_ADDRESS_TRACKER_LINUX_H_
+@@ -7,9 +7,6 @@
#include <sys/socket.h> // 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 <linux/rtnetlink.h>
- #undef net
-+#endif
+-#define net net_kernel
+-#include <linux/rtnetlink.h>
+-#undef net
#include <stddef.h>
#include <map>
-@@ -34,8 +36,12 @@ namespace internal {
- class NET_EXPORT_PRIVATE AddressTrackerLinux
- : public base::MessagePumpForIO::FdWatcher {
- public:
-+#if !defined(__FreeBSD__)
- typedef std::map<IPAddress, struct ifaddrmsg> AddressMap;
-
-+#else
-+ typedef void* AddressMap;
-+#endif
- // Non-tracking version constructor: it takes a snapshot of the
- // current system configuration. Once Init() returns, the
- // configuration is available through GetOnlineLinks() and
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__gssapi__posix.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__gssapi__posix.h
new file mode 100644
index 000000000000..b2ecce07eb08
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_http_http__auth__gssapi__posix.h
@@ -0,0 +1,12 @@
+--- src/3rdparty/chromium/net/http/http_auth_gssapi_posix.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/net/http/http_auth_gssapi_posix.h
+@@ -21,6 +21,9 @@
+ #include <GSS/gssapi.h>
+ #elif defined(OS_FREEBSD)
+ #include <gssapi/gssapi.h>
++#ifndef GSS_C_DELEG_POLICY_FLAG
++#define GSS_C_DELEG_POLICY_FLAG 32768
++#endif
+ #else
+ #include <gssapi.h>
+ #endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_http_http__network__session.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_http_http__network__session.cc
deleted file mode 100644
index a096dd0bdeb6..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_http_http__network__session.cc
+++ /dev/null
@@ -1,12 +0,0 @@
---- src/3rdparty/chromium/net/http/http_network_session.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/net/http/http_network_session.cc
-@@ -20,7 +20,9 @@
- #include "base/trace_event/memory_dump_request_args.h"
- #include "base/trace_event/process_memory_dump.h"
- #include "base/values.h"
-+#if defined(USE_KERBEROS)
- #include "net/http/http_auth_handler_factory.h"
-+#endif
- #include "net/http/http_response_body_drainer.h"
- #include "net/http/http_stream_factory.h"
- #include "net/http/url_security_manager.h"
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_socket_udp__socket__posix.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_socket_udp__socket__posix.h
new file mode 100644
index 000000000000..14b859f71923
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_socket_udp__socket__posix.h
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/net/socket/udp_socket_posix.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/net/socket/udp_socket_posix.h
+@@ -33,7 +33,7 @@
+
+ #if defined(__ANDROID__) && defined(__aarch64__)
+ #define HAVE_SENDMMSG 1
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_BSD)
+ #define HAVE_SENDMMSG 1
+ #else
+ #define HAVE_SENDMMSG 0
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_socket_unix__domain__client__socket__posix.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_socket_unix__domain__client__socket__posix.cc
new file mode 100644
index 000000000000..f1a851f7b85a
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_socket_unix__domain__client__socket__posix.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/net/socket/unix_domain_client_socket_posix.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/net/socket/unix_domain_client_socket_posix.cc
+@@ -56,7 +56,7 @@ bool UnixDomainClientSocket::FillAddress(const std::st
+ return true;
+ }
+
+-#if defined(OS_ANDROID) || defined(OS_LINUX)
++#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_BSD)
+ // Convert the path given into abstract socket name. It must start with
+ // the '\0' character, so we are adding it. |addr_len| must specify the
+ // length of the structure exactly, as potentially the socket name may
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_third__party_quic_platform_impl_quic__ip__address__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_third__party_quic_platform_impl_quic__ip__address__impl.cc
deleted file mode 100644
index ed2c47ace89c..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_third__party_quic_platform_impl_quic__ip__address__impl.cc
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/3rdparty/chromium/net/third_party/quic/platform/impl/quic_ip_address_impl.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/net/third_party/quic/platform/impl/quic_ip_address_impl.cc
-@@ -13,6 +13,7 @@
- #include <ws2bth.h>
- #elif defined(OS_POSIX) || defined(OS_FUCHSIA)
- #include <netinet/in.h>
-+#include <sys/socket.h>
- #endif
-
- using std::string;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_traffic__annotation_network__traffic__annotation.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_traffic__annotation_network__traffic__annotation.h
new file mode 100644
index 000000000000..f2907ce0a88b
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_traffic__annotation_network__traffic__annotation.h
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/net/traffic_annotation/network_traffic_annotation.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/net/traffic_annotation/network_traffic_annotation.h
+@@ -356,7 +356,7 @@ struct MutablePartialNetworkTrafficAnnotationTag {
+ } // namespace net
+
+ // Placeholder for unannotated usages.
+-#if !defined(OS_WIN) && !defined(OS_LINUX) && !defined(OS_CHROMEOS)
++#if !defined(OS_WIN) && !defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_BSD)
+ #define TRAFFIC_ANNOTATION_WITHOUT_PROTO(ANNOTATION_ID) \
+ net::DefineNetworkTrafficAnnotation(ANNOTATION_ID, "No proto yet.")
+ #endif
+@@ -367,7 +367,7 @@ struct MutablePartialNetworkTrafficAnnotationTag {
+ //
+ // On Linux and Windows, use MISSING_TRAFFIC_ANNOTATION or
+ // TRAFFIC_ANNOTATION_FOR_TESTS.
+-#if (!defined(OS_WIN) && !defined(OS_LINUX)) || defined(OS_CHROMEOS)
++#if (!defined(OS_WIN) && !defined(OS_LINUX) && !defined(OS_BSD)) || defined(OS_CHROMEOS)
+ #define NO_TRAFFIC_ANNOTATION_YET \
+ net::DefineNetworkTrafficAnnotation("undefined", "Nothing here yet.")
+
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__fetcher.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__fetcher.cc
new file mode 100644
index 000000000000..bd7453b18da3
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__fetcher.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/net/url_request/url_fetcher.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/net/url_request/url_fetcher.cc
+@@ -11,7 +11,7 @@ namespace net {
+
+ URLFetcher::~URLFetcher() = default;
+
+-#if (!defined(OS_WIN) && !defined(OS_LINUX)) || defined(OS_CHROMEOS)
++#if (!defined(OS_WIN) && !defined(OS_LINUX) && !defined(OS_BSD)) || defined(OS_CHROMEOS)
+ // static
+ std::unique_ptr<URLFetcher> URLFetcher::Create(
+ const GURL& url,
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__fetcher.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__fetcher.h
new file mode 100644
index 000000000000..d1fa6c39daf1
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__fetcher.h
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/net/url_request/url_fetcher.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/net/url_request/url_fetcher.h
+@@ -113,7 +113,7 @@ class NET_EXPORT URLFetcher {
+ // The unannotated Create() methods are not available on desktop Linux +
+ // Windows. They are available on other platforms, since we only audit network
+ // annotations on Linux & Windows.
+-#if (!defined(OS_WIN) && !defined(OS_LINUX)) || defined(OS_CHROMEOS)
++#if (!defined(OS_WIN) && !defined(OS_LINUX) && !defined(OS_BSD)) || defined(OS_CHROMEOS)
+ // |url| is the URL to send the request to. It must be valid.
+ // |request_type| is the type of request to make.
+ // |d| the object that will receive the callback on fetch completion.
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context.cc
new file mode 100644
index 000000000000..91c36c440cf1
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/net/url_request/url_request_context.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/net/url_request/url_request_context.cc
+@@ -89,7 +89,7 @@ const HttpNetworkSession::Context* URLRequestContext::
+ return &network_session->context();
+ }
+
+-#if (!defined(OS_WIN) && !defined(OS_LINUX)) || defined(OS_CHROMEOS)
++#if (!defined(OS_WIN) && !defined(OS_LINUX) && !defined(OS_BSD)) || defined(OS_CHROMEOS)
+ std::unique_ptr<URLRequest> URLRequestContext::CreateRequest(
+ const GURL& url,
+ RequestPriority priority,
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context.h
new file mode 100644
index 000000000000..13e2f80df8f0
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_net_url__request_url__request__context.h
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/net/url_request/url_request_context.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/net/url_request/url_request_context.h
+@@ -90,7 +90,7 @@ class NET_EXPORT URLRequestContext
+ // session.
+ const HttpNetworkSession::Context* GetNetworkSessionContext() const;
+
+-#if (!defined(OS_WIN) && !defined(OS_LINUX)) || defined(OS_CHROMEOS)
++#if (!defined(OS_WIN) && !defined(OS_LINUX) && !defined(OS_BSD)) || defined(OS_CHROMEOS)
+ // This function should not be used in Chromium, please use the version with
+ // NetworkTrafficAnnotationTag in the future.
+ //
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_pdf_pdfium_pdfium__engine.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_pdf_pdfium_pdfium__engine.cc
index edfc693e7a3e..c6927f629f78 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_pdf_pdfium_pdfium__engine.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_pdf_pdfium_pdfium__engine.cc
@@ -1,15 +1,15 @@
---- src/3rdparty/chromium/pdf/pdfium/pdfium_engine.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/pdf/pdfium/pdfium_engine.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/pdf/pdfium/pdfium_engine.cc
-@@ -137,7 +137,7 @@ constexpr bool kIsEditModeTracked = false;
-
- PDFiumEngine* g_engine_for_fontmapper = nullptr;
+@@ -138,7 +138,7 @@ constexpr base::TimeDelta kMaxProgressivePaintTime =
+ constexpr base::TimeDelta kMaxInitialProgressivePaintTime =
+ base::TimeDelta::FromMilliseconds(250);
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
PP_Instance g_last_instance_id;
-@@ -641,7 +641,7 @@ bool InitializeSDK() {
+@@ -560,7 +560,7 @@ bool InitializeSDK() {
config.m_v8EmbedderSlot = gin::kEmbedderPDFium;
FPDF_InitLibraryWithConfig(&config);
@@ -17,17 +17,8 @@
+#if defined(OS_LINUX) || defined(OS_BSD)
// Font loading doesn't work in the renderer sandbox in Linux.
FPDF_SetSystemFontInfo(&g_font_info);
- #else
-@@ -666,7 +666,7 @@ bool InitializeSDK() {
-
- void ShutdownSDK() {
- FPDF_DestroyLibrary();
--#if !defined(OS_LINUX)
-+#if !defined(OS_LINUX) && !defined(OS_BSD)
- delete g_font_info;
#endif
- TearDownV8();
-@@ -690,7 +690,7 @@ PDFiumEngine::PDFiumEngine(PDFEngine::Client* client,
+@@ -593,7 +593,7 @@ PDFiumEngine::PDFiumEngine(PDFEngine::Client* client,
IFSDK_PAUSE::user = nullptr;
IFSDK_PAUSE::NeedToPauseNow = Pause_NeedToPauseNow;
@@ -36,7 +27,7 @@
// PreviewModeClient does not know its pp::Instance.
pp::Instance* instance = client_->GetPluginInstance();
if (instance)
-@@ -1147,7 +1147,7 @@ pp::Buffer_Dev PDFiumEngine::PrintPagesAsRasterPDF(
+@@ -1045,7 +1045,7 @@ pp::Buffer_Dev PDFiumEngine::PrintPagesAsRasterPdf(
KillFormFocus();
@@ -45,7 +36,7 @@
g_last_instance_id = client_->GetPluginInstance()->pp_instance();
#endif
-@@ -2842,7 +2842,7 @@ bool PDFiumEngine::ContinuePaint(int progressive_index
+@@ -2898,7 +2898,7 @@ bool PDFiumEngine::ContinuePaint(int progressive_index
DCHECK(image_data);
last_progressive_start_time_ = base::Time::Now();
@@ -54,7 +45,7 @@
g_last_instance_id = client_->GetPluginInstance()->pp_instance();
#endif
-@@ -3320,7 +3320,7 @@ void PDFiumEngine::SetCurrentPage(int index) {
+@@ -3368,7 +3368,7 @@ void PDFiumEngine::SetCurrentPage(int index) {
FORM_DoPageAAction(old_page, form(), FPDFPAGE_AACTION_CLOSE);
}
most_visible_page_ = index;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ppapi_proxy_flash__resource.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ppapi_proxy_flash__resource.cc
new file mode 100644
index 000000000000..4ae92fb839ff
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ppapi_proxy_flash__resource.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/ppapi/proxy/flash_resource.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/ppapi/proxy/flash_resource.cc
+@@ -136,7 +136,7 @@ double FlashResource::GetLocalTimeZoneOffset(PP_Instan
+ // require filesystem access prohibited by the sandbox.
+ // TODO(shess): Figure out why OSX needs the access, the sandbox warmup should
+ // handle it. http://crbug.com/149006
+-#if defined(OS_LINUX) || defined(OS_MACOSX)
++#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD)
+ int32_t result = SyncCall<PpapiPluginMsg_Flash_GetLocalTimeZoneOffsetReply>(
+ BROWSER,
+ PpapiHostMsg_Flash_GetLocalTimeZoneOffset(PPTimeToTime(t)),
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_catalog_store.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_catalog_store.cc
deleted file mode 100644
index 73f0ac9496c1..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_catalog_store.cc
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/3rdparty/chromium/services/catalog/store.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/services/catalog/store.cc
-@@ -36,5 +36,7 @@ const char Store::kRequiredFilesKey_PlatformValue_MacO
- const char Store::kRequiredFilesKey_PlatformValue_Android[] = "android";
- // static
- const char Store::kRequiredFilesKey_PlatformValue_Fuchsia[] = "fuchsia";
-+// static
-+const char Store::kRequiredFilesKey_PlatformValue_FreeBSD[] = "freebsd";
-
- } // namespace catalog
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_catalog_store.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_catalog_store.h
deleted file mode 100644
index 7abe532eb157..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_catalog_store.h
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/3rdparty/chromium/services/catalog/store.h.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/services/catalog/store.h
-@@ -36,6 +36,7 @@ class Store {
- static const char kRequiredFilesKey_PlatformValue_MacOSX[];
- static const char kRequiredFilesKey_PlatformValue_Android[];
- static const char kRequiredFilesKey_PlatformValue_Fuchsia[];
-+ static const char kRequiredFilesKey_PlatformValue_FreeBSD[];
- };
-
- } // namespace catalog
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_content_simple__browser_simple__browser__service.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_content_simple__browser_simple__browser__service.cc
new file mode 100644
index 000000000000..418346117bb9
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_content_simple__browser_simple__browser__service.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/services/content/simple_browser/simple_browser_service.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/services/content/simple_browser/simple_browser_service.cc
+@@ -7,7 +7,7 @@
+ #include "build/build_config.h"
+ #include "services/content/simple_browser/window.h"
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ #include "third_party/skia/include/ports/SkFontConfigInterface.h" // nogncheck
+ #endif
+
+@@ -23,7 +23,7 @@ SimpleBrowserService::~SimpleBrowserService() = defaul
+
+ void SimpleBrowserService::OnStart() {
+ if (ui_initialization_mode_ == UIInitializationMode::kInitializeUI) {
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ font_loader_ =
+ sk_make_sp<font_service::FontLoader>(service_binding_.GetConnector());
+ SkFontConfigInterface::SetGlobal(font_loader_);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_content_simple__browser_simple__browser__service.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_content_simple__browser_simple__browser__service.h
index 885458855256..912959c28429 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_content_simple__browser_simple__browser__service.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_content_simple__browser_simple__browser__service.h
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/services/content/simple_browser/simple_browser_service.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/services/content/simple_browser/simple_browser_service.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/services/content/simple_browser/simple_browser_service.h
-@@ -16,7 +16,7 @@
+@@ -15,7 +15,7 @@
#include "services/service_manager/public/cpp/service_binding.h"
#include "services/service_manager/public/mojom/service.mojom.h"
@@ -9,7 +9,7 @@
#include "components/services/font/public/cpp/font_loader.h" // nogncheck
#endif
-@@ -50,7 +50,7 @@ class COMPONENT_EXPORT(SIMPLE_BROWSER) SimpleBrowserSe
+@@ -45,7 +45,7 @@ class COMPONENT_EXPORT(SIMPLE_BROWSER) SimpleBrowserSe
// service_manager::Service:
void OnStart() override;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_device_device__service.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_device_device__service.h
deleted file mode 100644
index 5f9fab4b7dbf..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_device_device__service.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/services/device/device_service.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/services/device/device_service.h
-@@ -198,7 +198,7 @@ class DeviceService : public service_manager::Service
- #endif
-
- #if (defined(OS_LINUX) && defined(USE_UDEV)) || defined(OS_WIN) || \
-- defined(OS_MACOSX)
-+ defined(OS_MACOSX) || defined(OS_BSD)
- // Requests for the SerialPortManager interface must be bound to
- // |serial_port_manager_| on |serial_port_manager_task_runner_| and it will
- // be destroyed on that sequence.
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_device_usb_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_device_usb_BUILD.gn
new file mode 100644
index 000000000000..147853bd0559
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_device_usb_BUILD.gn
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/services/device/usb/BUILD.gn.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/services/device/usb/BUILD.gn
+@@ -110,7 +110,7 @@ static_library("usb") {
+ ]
+ }
+
+- if (is_android || is_chromeos || is_linux) {
++ if ((is_android || is_chromeos || is_linux) && !is_bsd) {
+ sources += [
+ "usb_device_handle_usbfs.cc",
+ "usb_device_handle_usbfs.h",
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.cc
index 3e0893d53871..22f8cd1e953a 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_network_network__context.cc
@@ -1,24 +1,6 @@
---- src/3rdparty/chromium/services/network/network_context.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/services/network/network_context.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/services/network/network_context.cc
-@@ -132,7 +132,7 @@
- #endif // defined(USE_NSS_CERTS)
-
- #if defined(OS_ANDROID) || defined(OS_FUCHSIA) || \
-- (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_MACOSX)
-+ ((defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS)) || defined(OS_MACOSX)
- #include "net/cert/cert_net_fetcher.h"
- #include "net/cert_net/cert_net_fetcher_impl.h"
- #endif
-@@ -610,7 +610,7 @@ NetworkContext::~NetworkContext() {
- #endif
-
- #if defined(OS_ANDROID) || defined(OS_FUCHSIA) || \
-- (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_MACOSX)
-+ ((defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS)) || defined(OS_MACOSX)
- net::ShutdownGlobalCertNetFetcher();
- #endif
- }
-@@ -1700,7 +1700,7 @@ URLRequestContextOwner NetworkContext::ApplyContextPar
+@@ -1737,7 +1737,7 @@ URLRequestContextOwner NetworkContext::ApplyContextPar
net::CookieCryptoDelegate* crypto_delegate = nullptr;
if (params_->enable_encrypted_cookies) {
@@ -27,12 +9,3 @@
DCHECK(network_service_->os_crypt_config_set())
<< "NetworkService::SetCryptConfig must be called before creating a "
"NetworkContext with encrypted cookies.";
-@@ -2015,7 +2015,7 @@ URLRequestContextOwner NetworkContext::ApplyContextPar
- net::SetURLRequestContextForNSSHttpIO(result.url_request_context.get());
- #endif
- #if defined(OS_ANDROID) || defined(OS_FUCHSIA) || \
-- (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_MACOSX)
-+ ((defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS)) || defined(OS_MACOSX)
- net::SetGlobalCertNetFetcher(
- net::CreateCertNetFetcher(result.url_request_context.get()));
- #endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc
new file mode 100644
index 000000000000..4948abbb9c7c
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc
+@@ -43,7 +43,7 @@ namespace {
+ uint32_t CalculatePrivateFootprintKb(const mojom::RawOSMemDump& os_dump,
+ uint32_t shared_resident_kb) {
+ DCHECK(os_dump.platform_private_footprint);
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ uint64_t rss_anon_bytes = os_dump.platform_private_footprint->rss_anon_bytes;
+ uint64_t vm_swap_bytes = os_dump.platform_private_footprint->vm_swap_bytes;
+ return (rss_anon_bytes + vm_swap_bytes) / 1024;
+@@ -82,7 +82,7 @@ memory_instrumentation::mojom::OSMemDumpPtr CreatePubl
+ os_dump->is_peak_rss_resettable = internal_os_dump.is_peak_rss_resettable;
+ os_dump->private_footprint_kb =
+ CalculatePrivateFootprintKb(internal_os_dump, shared_resident_kb);
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ os_dump->private_footprint_swap_kb =
+ internal_os_dump.platform_private_footprint->vm_swap_bytes / 1024;
+ #endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics.h
index f7f653e1fbb1..d3345382efdf 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics.h
@@ -1,11 +1,32 @@
---- src/3rdparty/chromium/services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics.h.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics.h
-@@ -36,7 +36,7 @@ class SERVICES_RESOURCE_COORDINATOR_PUBLIC_CPP_EXPORT
+@@ -28,9 +28,9 @@ class COMPONENT_EXPORT(
+ mojom::RawOSMemDump*);
+ static std::vector<mojom::VmRegionPtr> GetProcessMemoryMaps(base::ProcessId);
+
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ static void SetProcSmapsForTesting(FILE*);
+-#endif // defined(OS_LINUX) || defined(OS_ANDROID)
++#endif // defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+
+ private:
+ FRIEND_TEST_ALL_PREFIXES(OSMetricsTest, ParseProcSmaps);
+@@ -44,7 +44,7 @@ class COMPONENT_EXPORT(
static std::vector<mojom::VmRegionPtr> GetProcessModules(base::ProcessId);
#endif
-#if defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
- static void SetProcSmapsForTesting(FILE*);
- #endif // defined(OS_LINUX)
+ // Provides information on the dump state of resident pages.
+ enum class MappedAndResidentPagesDumpState {
+ // Access to /proc/<pid>/pagemap can be denied for android devices running
+@@ -68,7 +68,7 @@ class COMPONENT_EXPORT(
+ // TODO(chiniforooshan): move to /base/process/process_metrics_linux.cc after
+ // making sure that peak RSS is useful.
+ static size_t GetPeakResidentSetSize(base::ProcessId pid);
+-#endif // defined(OS_LINUX) || defined(OS_ANDROID)
++#endif // defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
};
+
+ } // namespace memory_instrumentation
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics__linux.cc
index 61855ee21cd6..e43a38b1f096 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics__linux.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics__linux.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics_linux.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics_linux.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics_linux.cc
-@@ -17,8 +17,10 @@
+@@ -24,8 +24,10 @@
#include "build/build_config.h"
#include "services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics.h"
@@ -11,23 +11,23 @@
namespace memory_instrumentation {
-@@ -67,6 +69,7 @@ struct ModuleData {
+@@ -88,6 +90,7 @@ struct ModuleData {
ModuleData GetMainModuleData() {
ModuleData module_data;
+#if !defined(OS_BSD)
Dl_info dl_info;
if (dladdr(&__ehdr_start, &dl_info)) {
- base::Optional<std::string> build_id =
-@@ -76,6 +79,7 @@ ModuleData GetMainModuleData() {
- module_data.build_id = *build_id;
+ base::debug::ElfBuildIdBuffer build_id;
+@@ -98,6 +101,7 @@ ModuleData GetMainModuleData() {
+ module_data.build_id = std::string(build_id, build_id_length);
}
}
+#endif
return module_data;
}
-@@ -123,14 +127,14 @@ bool ParseSmapsHeader(const char* header_line,
+@@ -145,14 +149,14 @@ bool ParseSmapsHeader(const char* header_line,
// Build ID is needed to symbolize heap profiles, and is generated only on
// official builds. Build ID is only added for the current library (chrome)
// since it is racy to read other libraries which can be unmapped any time.
@@ -44,37 +44,60 @@
return res;
}
-@@ -217,6 +221,9 @@ void OSMetrics::SetProcSmapsForTesting(FILE* f) {
- // static
- bool OSMetrics::FillOSMemoryDump(base::ProcessId pid,
+@@ -241,6 +245,7 @@ bool OSMetrics::FillOSMemoryDump(base::ProcessId pid,
mojom::RawOSMemDump* dump) {
-+#if defined(OS_BSD)
-+ return false;
-+#else
- base::ScopedFD autoclose = OpenStatm(pid);
+ // TODO(chiniforooshan): There is no need to read both /statm and /status
+ // files. Refactor to get everything from /status using ProcessMetric.
++#if !defined(OS_BSD)
+ auto statm_file = GetProcPidDir(pid).Append("statm");
+ auto autoclose = base::ScopedFD(open(statm_file.value().c_str(), O_RDONLY));
int statm_fd = autoclose.get();
+@@ -255,6 +260,10 @@ bool OSMetrics::FillOSMemoryDump(base::ProcessId pid,
-@@ -242,10 +249,12 @@ bool OSMetrics::FillOSMemoryDump(base::ProcessId pid,
- dump->resident_set_kb = process_metrics->GetResidentSetSize() / 1024;
-
- return true;
+ if (!success)
+ return false;
++#else
++ uint64_t resident_pages = 0;
++ uint64_t shared_pages = 0;
+#endif
- }
+
+ auto process_metrics = CreateProcessMetrics(pid);
+
+@@ -295,6 +304,10 @@ bool OSMetrics::FillOSMemoryDump(base::ProcessId pid,
// static
std::vector<VmRegionPtr> OSMetrics::GetProcessMemoryMaps(base::ProcessId pid) {
+#if defined(OS_BSD)
++ NOTIMPLEMENTED();
++ return std::vector<VmRegionPtr>();
++#else
std::vector<VmRegionPtr> maps;
uint32_t res = 0;
if (g_proc_smaps_for_testing) {
-@@ -263,6 +272,10 @@ std::vector<VmRegionPtr> OSMetrics::GetProcessMemoryMa
+@@ -312,6 +325,7 @@ std::vector<VmRegionPtr> OSMetrics::GetProcessMemoryMa
return std::vector<VmRegionPtr>();
return maps;
-+#else
++#endif
+ }
+
+ // static
+@@ -319,6 +333,10 @@ OSMetrics::MappedAndResidentPagesDumpState OSMetrics::
+ const size_t start_address,
+ const size_t end_address,
+ std::vector<uint8_t>* accessed_pages_bitmap) {
++#if defined(OS_BSD)
+ NOTIMPLEMENTED();
-+ return std::vector<VmRegionPtr>();
++ return OSMetrics::MappedAndResidentPagesDumpState::kFailure;
++#else
+ const char* kPagemap = "/proc/self/pagemap";
+
+ base::ScopedFILE pagemap_file(fopen(kPagemap, "r"));
+@@ -360,6 +378,7 @@ OSMetrics::MappedAndResidentPagesDumpState OSMetrics::
+ }
+ }
+ return OSMetrics::MappedAndResidentPagesDumpState::kSuccess;
+#endif
}
- } // namespace memory_instrumentation
+ // static
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_service__manager_runner_host_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_service__manager_runner_host_BUILD.gn
deleted file mode 100644
index 6a1d02be6afb..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_service__manager_runner_host_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/services/service_manager/runner/host/BUILD.gn.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/services/service_manager/runner/host/BUILD.gn
-@@ -31,7 +31,7 @@ source_set("lib") {
- "//mojo/public/cpp/system",
- ]
-
-- if (is_linux) {
-+ if (is_linux && !is_bsd) {
- deps += [ "//sandbox/linux:sandbox_services" ]
- }
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_service__manager_zygote_zygote__linux.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_service__manager_zygote_zygote__linux.cc
index 73f3b038988f..7ecfc83da609 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_service__manager_zygote_zygote__linux.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_service__manager_zygote_zygote__linux.cc
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/services/service_manager/zygote/zygote_linux.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/services/service_manager/zygote/zygote_linux.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/services/service_manager/zygote/zygote_linux.cc
@@ -1,6 +1,7 @@
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
@@ -8,7 +8,7 @@
#include "services/service_manager/zygote/zygote_linux.h"
-@@ -664,3 +665,4 @@ bool Zygote::HandleGetSandboxStatus(int fd, base::Pick
+@@ -657,3 +658,4 @@ bool Zygote::HandleGetSandboxStatus(int fd, base::Pick
}
} // namespace service_manager
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_video__capture_broadcasting__receiver.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_video__capture_broadcasting__receiver.cc
new file mode 100644
index 000000000000..85cf5a55c188
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_services_video__capture_broadcasting__receiver.cc
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/services/video_capture/broadcasting_receiver.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/services/video_capture/broadcasting_receiver.cc
+@@ -40,7 +40,7 @@ void CloneSharedBufferHandle(const mojo::ScopedSharedB
+ void CloneSharedBufferToRawFileDescriptorHandle(
+ const mojo::ScopedSharedBufferHandle& source,
+ media::mojom::VideoBufferHandlePtr* target) {
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ media::SharedMemoryHandleProvider provider;
+ provider.InitFromMojoHandle(
+ source->Clone(mojo::SharedBufferHandle::AccessMode::READ_WRITE));
+@@ -180,7 +180,7 @@ void BroadcastingReceiver::BufferContext::
+ ConvertRawFileDescriptorToSharedBuffer() {
+ DCHECK(buffer_handle_->is_shared_memory_via_raw_file_descriptor());
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ media::SharedMemoryHandleProvider provider;
+ provider.InitAsReadOnlyFromRawFileDescriptor(
+ std::move(buffer_handle_->get_shared_memory_via_raw_file_descriptor()
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_BUILD.gn
new file mode 100644
index 000000000000..2a19ba1afb39
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_BUILD.gn
@@ -0,0 +1,13 @@
+--- src/3rdparty/chromium/third_party/blink/renderer/BUILD.gn.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/blink/renderer/BUILD.gn
+@@ -45,8 +45,8 @@ config("inside_blink") {
+ "-Wconversion",
+ "-Wno-float-conversion",
+ "-Wno-sign-conversion",
+- "-Wno-implicit-float-conversion",
+- "-Wno-implicit-int-conversion",
++# "-Wno-implicit-float-conversion",
++# "-Wno-implicit-int-conversion",
+ ]
+ }
+ }
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_inspector_inspector__memory__agent.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_inspector_inspector__memory__agent.cc
index cc46b9f273e1..16230249c0d9 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_inspector_inspector__memory__agent.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_inspector_inspector__memory__agent.cc
@@ -1,11 +1,11 @@
---- src/3rdparty/chromium/third_party/blink/renderer/core/inspector/inspector_memory_agent.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/blink/renderer/core/inspector/inspector_memory_agent.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/blink/renderer/core/inspector/inspector_memory_agent.cc
-@@ -171,7 +171,7 @@ InspectorMemoryAgent::GetSamplingProfileById(uint32_t
+@@ -184,7 +184,7 @@ InspectorMemoryAgent::GetSamplingProfileById(uint32_t
- std::vector<std::string> InspectorMemoryAgent::Symbolize(
- const std::vector<void*>& addresses) {
+ Vector<String> InspectorMemoryAgent::Symbolize(
+ const WebVector<void*>& addresses) {
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
// TODO(alph): Move symbolization to the client.
- std::vector<void*> addresses_to_symbolize;
- for (void* address : addresses) {
+ Vector<void*> addresses_to_symbolize;
+ for (size_t i = 0; i < addresses.size(); i++) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_scroll_scrollbar__theme__aura.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_scroll_scrollbar__theme__aura.cc
index dd75c36022d9..f080d7a00a5a 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_scroll_scrollbar__theme__aura.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_core_scroll_scrollbar__theme__aura.cc
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/third_party/blink/renderer/core/scroll/scrollbar_theme_aura.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/blink/renderer/core/scroll/scrollbar_theme_aura.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/blink/renderer/core/scroll/scrollbar_theme_aura.cc
@@ -332,7 +332,7 @@ ScrollbarPart ScrollbarThemeAura::InvalidateOnThumbPos
@@ -9,3 +9,12 @@
if (event.button == WebPointerProperties::Button::kMiddle)
return true;
#endif
+@@ -347,7 +347,7 @@ bool ScrollbarThemeAura::ShouldSnapBackToDragOrigin(
+ // Disable snapback on desktop Linux to better integrate with the desktop
+ // behavior. Typically, Linux apps do not implement scrollbar snapback (this is
+ // true for at least GTK and QT apps).
+-#if (defined(OS_LINUX) && !defined(OS_CHROMEOS))
++#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
+ return false;
+ #endif
+
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.cc
index bc9aec5f61db..fbdbc5bab073 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.cc
-@@ -66,7 +66,7 @@ namespace blink {
+@@ -76,7 +76,7 @@ static const char kColorEmojiLocale[] = "und-Zsye";
SkFontMgr* FontCache::static_font_manager_ = nullptr;
@@ -9,7 +9,7 @@
float FontCache::device_scale_factor_ = 1.0;
#endif
-@@ -89,7 +89,7 @@ FontCache::FontCache()
+@@ -115,7 +115,7 @@ FontCache::FontCache()
FontPlatformData* FontCache::SystemFontPlatformData(
const FontDescription& font_description) {
const AtomicString& family = FontCache::SystemFontFamily();
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.h
index 6ce9fe64fec9..e7f56d46416a 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__cache.h
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.h.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_cache.h
-@@ -156,7 +156,7 @@ class PLATFORM_EXPORT FontCache {
+@@ -154,7 +154,7 @@ class PLATFORM_EXPORT FontCache {
sk_sp<SkFontMgr> FontManager() { return font_manager_; }
static void SetFontManager(sk_sp<SkFontMgr>);
@@ -9,7 +9,7 @@
// These are needed for calling QueryRenderStyleForStrike, since
// gfx::GetFontRenderParams makes distinctions based on DSF.
static float DeviceScaleFactor() { return device_scale_factor_; }
-@@ -217,7 +217,7 @@ class PLATFORM_EXPORT FontCache {
+@@ -215,7 +215,7 @@ class PLATFORM_EXPORT FontCache {
const FontDescription&);
#endif // defined(OS_ANDROID)
@@ -17,8 +17,8 @@
+#if defined(OS_LINUX) || defined(OS_BSD)
struct PlatformFallbackFont {
String name;
- CString filename;
-@@ -229,7 +229,7 @@ class PLATFORM_EXPORT FontCache {
+ std::string filename;
+@@ -227,7 +227,7 @@ class PLATFORM_EXPORT FontCache {
static void GetFontForCharacter(UChar32,
const char* preferred_locale,
PlatformFallbackFont*);
@@ -27,16 +27,22 @@
scoped_refptr<SimpleFontData> FontDataFromFontPlatformData(
const FontPlatformData*,
-@@ -291,7 +291,7 @@ class PLATFORM_EXPORT FontCache {
- const FontFaceCreationParams&,
- CString& name);
+@@ -299,12 +299,12 @@ class PLATFORM_EXPORT FontCache {
+ const FontFaceCreationParams&,
+ std::string& name);
--#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_FUCHSIA)
-+#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_FUCHSIA) || defined(OS_BSD)
+-#if defined(OS_ANDROID) || defined(OS_LINUX)
++#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_BSD)
static AtomicString GetFamilyNameForCharacter(SkFontMgr*,
UChar32,
const FontDescription&,
-@@ -327,7 +327,7 @@ class PLATFORM_EXPORT FontCache {
+ FontFallbackPriority);
+-#endif // defined(OS_ANDROID) || defined(OS_LINUX)
++#endif // defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_BSD)
+
+ scoped_refptr<SimpleFontData> FallbackOnStandardFontStyle(
+ const FontDescription&,
+@@ -336,7 +336,7 @@ class PLATFORM_EXPORT FontCache {
bool is_test_font_mgr_ = false;
#endif // defined(OS_WIN)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__description.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__description.cc
index 20f54759b504..9e12869885c9 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__description.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__description.cc
@@ -1,8 +1,8 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_description.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_description.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_description.cc
@@ -38,7 +38,7 @@
- #include "third_party/blink/renderer/platform/wtf/text/atomic_string_hash.h"
#include "third_party/blink/renderer/platform/wtf/text/string_hash.h"
+ #include "third_party/blink/renderer/platform/wtf/text/string_hasher.h"
-#if defined(OS_LINUX) || defined(OS_CHROMEOS)
+#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__unique__name__lookup.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__unique__name__lookup.cc
index 7a92e8ec012c..b5303d7aba74 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__unique__name__lookup.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_font__unique__name__lookup.cc
@@ -1,15 +1,15 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_unique_name_lookup.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_unique_name_lookup.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/font_unique_name_lookup.cc
-@@ -10,7 +10,7 @@
+@@ -8,7 +8,7 @@
#if defined(OS_ANDROID)
- #include "third_party/blink/public/platform/modules/font_unique_name_lookup/font_unique_name_lookup.mojom-blink.h"
+ #include "third_party/blink/public/mojom/font_unique_name_lookup/font_unique_name_lookup.mojom-blink.h"
#include "third_party/blink/renderer/platform/fonts/android/font_unique_name_lookup_android.h"
-#elif defined(OS_LINUX)
+#elif defined(OS_LINUX) || defined(OS_BSD)
#include "third_party/blink/renderer/platform/fonts/linux/font_unique_name_lookup_linux.h"
#elif defined(OS_WIN)
- #include "third_party/blink/public/mojom/dwrite_font_proxy/dwrite_font_proxy.mojom-blink.h"
-@@ -26,7 +26,7 @@ std::unique_ptr<FontUniqueNameLookup>
+ #include "third_party/blink/renderer/platform/fonts/win/font_unique_name_lookup_win.h"
+@@ -23,7 +23,7 @@ std::unique_ptr<FontUniqueNameLookup>
FontUniqueNameLookup::GetPlatformUniqueNameLookup() {
#if defined(OS_ANDROID)
return std::make_unique<FontUniqueNameLookupAndroid>();
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_skia_font__cache__skia.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_skia_font__cache__skia.cc
index 729361329642..70981e0d3b55 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_skia_font__cache__skia.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_skia_font__cache__skia.cc
@@ -1,24 +1,24 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/skia/font_cache_skia.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/skia/font_cache_skia.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/blink/renderer/platform/fonts/skia/font_cache_skia.cc
-@@ -60,7 +60,7 @@ AtomicString ToAtomicString(const SkString& str) {
+@@ -59,7 +59,7 @@ AtomicString ToAtomicString(const SkString& str) {
return AtomicString::FromUTF8(str.c_str(), str.size());
}
--#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_FUCHSIA)
-+#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_FUCHSIA) || defined(OS_BSD)
- // Android special locale for retrieving the color emoji font
- // based on the proposed changes in UTR #51 for introducing
- // an Emoji script code:
-@@ -104,7 +104,7 @@ AtomicString FontCache::GetFamilyNameForCharacter(
+-#if defined(OS_ANDROID) || defined(OS_LINUX)
++#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_BSD)
+ // This function is called on android or when we are emulating android fonts on
+ // linux and the embedder has overriden the default fontManager with
+ // WebFontRendering::setSkiaFontMgr.
+@@ -82,7 +82,7 @@ AtomicString FontCache::GetFamilyNameForCharacter(
typeface->getFamilyName(&skia_family_name);
return ToAtomicString(skia_family_name);
}
--#endif // defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_FUCHSIA)
-+#endif // defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_FUCHSIA) || defined(OS_BSD)
+-#endif // defined(OS_ANDROID) || defined(OS_LINUX)
++#endif // defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_BSD)
void FontCache::PlatformInit() {}
-@@ -249,7 +249,7 @@ sk_sp<SkTypeface> FontCache::CreateTypeface(
+@@ -227,7 +227,7 @@ sk_sp<SkTypeface> FontCache::CreateTypeface(
}
#endif
@@ -27,12 +27,12 @@
// On linux if the fontManager has been overridden then we should be calling
// the embedder provided font Manager rather than calling
// SkTypeface::CreateFromName which may redirect the call to the default font
-@@ -276,7 +276,7 @@ std::unique_ptr<FontPlatformData> FontCache::CreateFon
- CString name;
+@@ -254,7 +254,7 @@ std::unique_ptr<FontPlatformData> FontCache::CreateFon
+ std::string name;
sk_sp<SkTypeface> typeface;
-#if defined(OS_ANDROID) || defined(OS_LINUX)
+#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_BSD)
if (alternate_name == AlternateFontName::kLocalUniqueFace &&
RuntimeEnabledFeatures::FontSrcLocalMatchingEnabled()) {
- typeface = CreateTypefaceFromUniqueName(creation_params, name);
+ typeface = CreateTypefaceFromUniqueName(creation_params);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_graphics__context__test.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_graphics__context__test.cc
deleted file mode 100644
index 186c79627a93..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_graphics__context__test.cc
+++ /dev/null
@@ -1,134 +0,0 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/graphics_context_test.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/graphics_context_test.cc
-@@ -52,7 +52,7 @@ namespace blink {
- { \
- for (int y = opaqueRect.Y(); y < opaqueRect.MaxY(); ++y) \
- for (int x = opaqueRect.X(); x < opaqueRect.MaxX(); ++x) { \
-- int alpha = *bitmap.getAddr32(x, y) >> 24; \
-+ int alpha = SkGetPackedA32(*bitmap.getAddr32(x, y)); \
- EXPECT_EQ(255, alpha); \
- } \
- }
-@@ -61,12 +61,16 @@ namespace blink {
- { \
- for (int y = 0; y < bitmap.height(); ++y) \
- for (int x = 0; x < bitmap.width(); ++x) { \
-- int alpha = *bitmap.getAddr32(x, y) >> 24; \
-+ int alpha = SkGetPackedA32(*bitmap.getAddr32(x, y)); \
- bool opaque = opaqueRect.Contains(x, y); \
- EXPECT_EQ(opaque, alpha == 255); \
- } \
- }
-
-+static inline uint32_t PackARGB32(uint32_t argb) {
-+ return SkPackARGB32NoCheck(argb>>24, (argb<<8)>>24, (argb<<16)>>24, (argb<<24)>>24);
-+}
-+
- TEST(GraphicsContextTest, Recording) {
- SkBitmap bitmap;
- bitmap.allocN32Pixels(100, 100);
-@@ -184,10 +188,10 @@ class GraphicsContextHighConstrastTest : public testin
- TEST_F(GraphicsContextHighConstrastTest, MAYBE_NoHighContrast) {
- DrawColorsToContext();
-
-- EXPECT_EQ(0xff000000, *bitmap_.getAddr32(0, 0));
-- EXPECT_EQ(0xffffffff, *bitmap_.getAddr32(1, 0));
-- EXPECT_EQ(0xffff0000, *bitmap_.getAddr32(2, 0));
-- EXPECT_EQ(0xff808080, *bitmap_.getAddr32(3, 0));
-+ EXPECT_EQ(PackARGB32(0xff000000), *bitmap_.getAddr32(0, 0));
-+ EXPECT_EQ(PackARGB32(0xffffffff), *bitmap_.getAddr32(1, 0));
-+ EXPECT_EQ(PackARGB32(0xffff0000), *bitmap_.getAddr32(2, 0));
-+ EXPECT_EQ(PackARGB32(0xff808080), *bitmap_.getAddr32(3, 0));
- }
-
- // TODO(crbug.com/850782): Reenable this.
-@@ -205,10 +209,10 @@ TEST_F(GraphicsContextHighConstrastTest, MAYBE_HighCon
-
- DrawColorsToContext();
-
-- EXPECT_EQ(0xff000000, *bitmap_.getAddr32(0, 0));
-- EXPECT_EQ(0xffffffff, *bitmap_.getAddr32(1, 0));
-- EXPECT_EQ(0xffff0000, *bitmap_.getAddr32(2, 0));
-- EXPECT_EQ(0xff808080, *bitmap_.getAddr32(3, 0));
-+ EXPECT_EQ(PackARGB32(0xff000000), *bitmap_.getAddr32(0, 0));
-+ EXPECT_EQ(PackARGB32(0xffffffff), *bitmap_.getAddr32(1, 0));
-+ EXPECT_EQ(PackARGB32(0xffff0000), *bitmap_.getAddr32(2, 0));
-+ EXPECT_EQ(PackARGB32(0xff808080), *bitmap_.getAddr32(3, 0));
- }
-
- // Simple invert for testing. Each color component |c|
-@@ -228,10 +232,10 @@ TEST_F(GraphicsContextHighConstrastTest, MAYBE_SimpleI
-
- DrawColorsToContext();
-
-- EXPECT_EQ(0xffffffff, *bitmap_.getAddr32(0, 0));
-- EXPECT_EQ(0xff000000, *bitmap_.getAddr32(1, 0));
-- EXPECT_EQ(0xff00ffff, *bitmap_.getAddr32(2, 0));
-- EXPECT_EQ(0xff7f7f7f, *bitmap_.getAddr32(3, 0));
-+ EXPECT_EQ(PackARGB32(0xffffffff), *bitmap_.getAddr32(0, 0));
-+ EXPECT_EQ(PackARGB32(0xff000000), *bitmap_.getAddr32(1, 0));
-+ EXPECT_EQ(PackARGB32(0xff00ffff), *bitmap_.getAddr32(2, 0));
-+ EXPECT_EQ(PackARGB32(0xff7f7f7f), *bitmap_.getAddr32(3, 0));
- }
-
- // Invert brightness (with gamma correction).
-@@ -250,10 +254,10 @@ TEST_F(GraphicsContextHighConstrastTest, MAYBE_InvertB
-
- DrawColorsToContext();
-
-- EXPECT_EQ(0xffffffff, *bitmap_.getAddr32(0, 0));
-- EXPECT_EQ(0xff000000, *bitmap_.getAddr32(1, 0));
-- EXPECT_EQ(0xff00ffff, *bitmap_.getAddr32(2, 0));
-- EXPECT_EQ(0xffdddddd, *bitmap_.getAddr32(3, 0));
-+ EXPECT_EQ(PackARGB32(0xffffffff), *bitmap_.getAddr32(0, 0));
-+ EXPECT_EQ(PackARGB32(0xff000000), *bitmap_.getAddr32(1, 0));
-+ EXPECT_EQ(PackARGB32(0xff00ffff), *bitmap_.getAddr32(2, 0));
-+ EXPECT_EQ(PackARGB32(0xffdddddd), *bitmap_.getAddr32(3, 0));
- }
-
- // Invert lightness (in HSL space).
-@@ -272,10 +276,10 @@ TEST_F(GraphicsContextHighConstrastTest, MAYBE_InvertL
-
- DrawColorsToContext();
-
-- EXPECT_EQ(0xffffffff, *bitmap_.getAddr32(0, 0));
-- EXPECT_EQ(0xff000000, *bitmap_.getAddr32(1, 0));
-- EXPECT_EQ(0xffff0000, *bitmap_.getAddr32(2, 0));
-- EXPECT_EQ(0xffdddddd, *bitmap_.getAddr32(3, 0));
-+ EXPECT_EQ(PackARGB32(0xffffffff), *bitmap_.getAddr32(0, 0));
-+ EXPECT_EQ(PackARGB32(0xff000000), *bitmap_.getAddr32(1, 0));
-+ EXPECT_EQ(PackARGB32(0xffff0000), *bitmap_.getAddr32(2, 0));
-+ EXPECT_EQ(PackARGB32(0xffdddddd), *bitmap_.getAddr32(3, 0));
- }
-
- // Invert lightness plus grayscale.
-@@ -288,10 +292,10 @@ TEST_F(GraphicsContextHighConstrastTest, InvertLightne
-
- DrawColorsToContext();
-
-- EXPECT_EQ(0xffffffff, *bitmap_.getAddr32(0, 0));
-- EXPECT_EQ(0xff000000, *bitmap_.getAddr32(1, 0));
-- EXPECT_EQ(0xffe2e2e2, *bitmap_.getAddr32(2, 0));
-- EXPECT_EQ(0xffdddddd, *bitmap_.getAddr32(3, 0));
-+ EXPECT_EQ(PackARGB32(0xffffffff), *bitmap_.getAddr32(0, 0));
-+ EXPECT_EQ(PackARGB32(0xff000000), *bitmap_.getAddr32(1, 0));
-+ EXPECT_EQ(PackARGB32(0xffe2e2e2), *bitmap_.getAddr32(2, 0));
-+ EXPECT_EQ(PackARGB32(0xffdddddd), *bitmap_.getAddr32(3, 0));
- }
-
- // TODO(crbug.com/850782): Reenable this.
-@@ -309,10 +313,10 @@ TEST_F(GraphicsContextHighConstrastTest, MAYBE_InvertL
-
- DrawColorsToContext();
-
-- EXPECT_EQ(0xffffffff, *bitmap_.getAddr32(0, 0));
-- EXPECT_EQ(0xff000000, *bitmap_.getAddr32(1, 0));
-- EXPECT_EQ(0xffff0000, *bitmap_.getAddr32(2, 0));
-- EXPECT_EQ(0xffeeeeee, *bitmap_.getAddr32(3, 0));
-+ EXPECT_EQ(PackARGB32(0xffffffff), *bitmap_.getAddr32(0, 0));
-+ EXPECT_EQ(PackARGB32(0xff000000), *bitmap_.getAddr32(1, 0));
-+ EXPECT_EQ(PackARGB32(0xffff0000), *bitmap_.getAddr32(2, 0));
-+ EXPECT_EQ(PackARGB32(0xffeeeeee), *bitmap_.getAddr32(3, 0));
- }
-
- } // namespace blink
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_highcontrast_highcontrast__classifier.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_highcontrast_highcontrast__classifier.cc
deleted file mode 100644
index 7b3dd5634e3e..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_highcontrast_highcontrast__classifier.cc
+++ /dev/null
@@ -1,79 +0,0 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/highcontrast/highcontrast_classifier.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/highcontrast/highcontrast_classifier.cc
-@@ -1060,55 +1060,47 @@ void DequantizeMinFirst(const int32_t rank,
-
- // -----------------------------------------------------------------------------
- // CONSTANTS
--// Note that for now, endianness of the target machine needs to match that of
--// the one training was performed on.
- // -----------------------------------------------------------------------------
- const int32_t dnn_hiddenlayer_0_weights_part_0_shape[2] = {4, 10};
- const union {
-- uint8_t bytes[160];
- float values[40];
- } dnn_hiddenlayer_0_weights_part_0 = {{
-- 0xbc, 0x22, 0x0a, 0xbf, 0xb4, 0x46, 0x8c, 0x3f, 0xba, 0x31, 0x34, 0xbe,
-- 0x4c, 0x65, 0xdb, 0xbe, 0xf0, 0x54, 0x5e, 0xbe, 0xc1, 0x5d, 0xb3, 0x3f,
-- 0xf4, 0xe6, 0x15, 0xbf, 0x05, 0xc6, 0x34, 0xbf, 0xc0, 0x37, 0x7e, 0xbd,
-- 0x6c, 0x35, 0x0b, 0xbf, 0xca, 0x53, 0x26, 0xbf, 0x58, 0xb4, 0x87, 0x3f,
-- 0x37, 0xee, 0x39, 0xbf, 0xda, 0xfa, 0xf9, 0xbe, 0x97, 0xc1, 0x06, 0xbf,
-- 0xf9, 0x4e, 0x81, 0x3f, 0xb2, 0x44, 0x85, 0xbf, 0x7f, 0x98, 0x7c, 0x3d,
-- 0x15, 0x26, 0xbc, 0xbe, 0x5c, 0x48, 0x05, 0x3f, 0xc8, 0xaa, 0xa1, 0xbd,
-- 0x35, 0xb3, 0x43, 0xbe, 0xeb, 0x46, 0x91, 0x3f, 0x80, 0x71, 0xe3, 0x3c,
-- 0xd1, 0x98, 0x79, 0x3f, 0x3c, 0xd0, 0x0d, 0xbf, 0x1e, 0x02, 0xd3, 0x3e,
-- 0x5d, 0x4b, 0xa2, 0xbf, 0x68, 0xac, 0xaa, 0xbd, 0xf8, 0xe1, 0x75, 0x3e,
-- 0x4a, 0x9c, 0x27, 0xbe, 0xf8, 0xae, 0xb2, 0xbe, 0x7f, 0x9d, 0x91, 0x3f,
-- 0x1e, 0x8b, 0xa8, 0xbe, 0x35, 0x7e, 0xb2, 0x3f, 0xbe, 0x8c, 0xd3, 0xbe,
-- 0xf9, 0xcd, 0xb5, 0x3f, 0xa1, 0x50, 0xaa, 0x3f, 0xe4, 0x6d, 0xdd, 0xbe,
-- 0x0d, 0xce, 0xd3, 0xbe,
-+ -0.539592504501343, 1.09590768814087, -0.175970941781998, -0.428507208824158,
-+ -0.217120885848999, 1.40129864215851, -0.5855553150177, -0.706146538257599,
-+ -0.0620648860931396, -0.543783903121948, -0.649716019630432, 1.06019115447998,
-+ -0.726291120052338, -0.488241970539093, -0.526391446590424, 1.01022255420685,
-+ -1.04115891456604, 0.0616688691079617, -0.367478042840958, 0.520635366439819,
-+ -0.0789390206336975, -0.19111330807209, 1.13497674465179, 0.0277640819549561,
-+ 0.974988043308258, -0.553958654403687, 0.412125527858734, -1.2679249048233,
-+ -0.0833366513252258, 0.240119814872742, -0.163682132959366, -0.34899115562439,
-+ 1.1376188993454, -0.329186379909515, 1.3944765329361, -0.413183152675629,
-+ 1.42034828662872, 1.33058559894562, -0.432479023933411, -0.413681417703629
- }};
- const int32_t dnn_hiddenlayer_0_biases_part_0_shape[1] = {10};
- const union {
-- uint8_t bytes[40];
- float values[10];
- } dnn_hiddenlayer_0_biases_part_0 = {{
-- 0x00, 0x00, 0x00, 0x00, 0xbf, 0x6a, 0x53, 0x3e, 0xd3, 0xc1,
-- 0xd0, 0x3e, 0x00, 0x00, 0x00, 0x00, 0xb6, 0xd8, 0xc0, 0x3e,
-- 0xca, 0xe7, 0x35, 0x3e, 0x23, 0xa5, 0x44, 0x3f, 0x61, 0xfd,
-- 0xd2, 0x3e, 0x00, 0x00, 0x00, 0x00, 0xb6, 0xe0, 0x43, 0x3c,
-+ 0.0, 0.206461891531944,
-+ 0.407728761434555, 0.0,
-+ 0.376653373241425, 0.177642017602921,
-+ 0.76814478635788, 0.412089377641678,
-+ 0.0, 0.0119554307311773
- }};
- const int32_t dnn_logits_biases_part_0_shape[1] = {1};
- const union {
-- uint8_t bytes[4];
- float values[1];
- } dnn_logits_biases_part_0 = {{
-- 0x75, 0xca, 0xd7, 0xbe,
-+ -0.421466499567032
- }};
- const int32_t dnn_logits_weights_part_0_shape[2] = {10, 1};
- const union {
-- uint8_t bytes[40];
- float values[10];
- } dnn_logits_weights_part_0 = {{
-- 0x13, 0x12, 0x39, 0x3f, 0xf3, 0xa5, 0xc2, 0xbf, 0x81, 0x7f,
-- 0xbe, 0x3f, 0xf8, 0x17, 0x26, 0x3e, 0xa4, 0x19, 0xa6, 0x3f,
-- 0xf0, 0xc9, 0xb7, 0xbf, 0x6a, 0x99, 0xd2, 0x3f, 0x8a, 0x7d,
-- 0xe9, 0x3f, 0x83, 0x9a, 0x3a, 0xbf, 0xf1, 0x6c, 0x08, 0x3e,
-+ 0.722932040691376, -1.52068936824799,
-+ 1.48826611042023, 0.162200808525085,
-+ 1.29765748977661, -1.43585014343262,
-+ 1.64530682563782, 1.82414364814758,
-+ -0.728920161724091, 0.133228078484535
- }};
-
- } // anonymous namespace
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_heap_asm_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_heap_asm_BUILD.gn
deleted file mode 100644
index fd266e30f9cf..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_heap_asm_BUILD.gn
+++ /dev/null
@@ -1,13 +0,0 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/heap/asm/BUILD.gn.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/blink/renderer/platform/heap/asm/BUILD.gn
-@@ -46,6 +46,10 @@ if (current_cpu == "x86" || current_cpu == "x64") {
- sources = [
- "SaveRegisters_mips64.S",
- ]
-+ } else if (current_cpu == "ppc64") {
-+ sources = [
-+ "SaveRegisters_ppc64.S",
-+ ]
- }
-
- if (current_cpu == "arm") {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_heap_stack__frame__depth.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_heap_stack__frame__depth.cc
deleted file mode 100644
index dd87fce00ea0..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_heap_stack__frame__depth.cc
+++ /dev/null
@@ -1,14 +0,0 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/heap/stack_frame_depth.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/third_party/blink/renderer/platform/heap/stack_frame_depth.cc
-@@ -15,6 +15,11 @@
- extern "C" void* __libc_stack_end; // NOLINT
- #endif
-
-+#if defined(OS_FREEBSD)
-+#include <sys/signal.h>
-+#include <pthread_np.h>
-+#endif
-+
- namespace blink {
-
- static const char* g_avoid_optimization = nullptr;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_image-decoders_bmp_bmp__image__reader.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_image-decoders_bmp_bmp__image__reader.h
deleted file mode 100644
index 2f966c9674ad..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_image-decoders_bmp_bmp__image__reader.h
+++ /dev/null
@@ -1,24 +0,0 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/image-decoders/bmp/bmp_image_reader.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/blink/renderer/platform/image-decoders/bmp/bmp_image_reader.h
-@@ -37,6 +37,7 @@
- #include "third_party/blink/renderer/platform/wtf/allocator.h"
- #include "third_party/blink/renderer/platform/wtf/cpu.h"
- #include "third_party/blink/renderer/platform/wtf/noncopyable.h"
-+#include "base/sys_byteorder.h"
-
- namespace blink {
-
-@@ -50,11 +51,11 @@ class PLATFORM_EXPORT BMPImageReader final {
- // Read a value from |buffer|, converting to an int assuming little
- // endianness
- static inline uint16_t ReadUint16(const char* buffer) {
-- return *reinterpret_cast<const uint16_t*>(buffer);
-+ return base::ByteSwapToLE16(*reinterpret_cast<const uint16_t*>(buffer));
- }
-
- static inline uint32_t ReadUint32(const char* buffer) {
-- return *reinterpret_cast<const uint32_t*>(buffer);
-+ return base::ByteSwapToLE32(*reinterpret_cast<const uint32_t*>(buffer));
- }
-
- // |parent| is the decoder that owns us.
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_image-decoders_webp_webp__image__decoder.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_image-decoders_webp_webp__image__decoder.cc
deleted file mode 100644
index de881b4549d3..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_image-decoders_webp_webp__image__decoder.cc
+++ /dev/null
@@ -1,29 +0,0 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/image-decoders/webp/webp_image_decoder.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/blink/renderer/platform/image-decoders/webp/webp_image_decoder.cc
-@@ -32,18 +32,20 @@
- #include "third_party/blink/renderer/platform/histogram.h"
- #include "third_party/skia/include/core/SkData.h"
-
--#if defined(ARCH_CPU_BIG_ENDIAN)
--#error Blink assumes a little-endian target.
--#endif
--
--#if SK_B32_SHIFT // Output little-endian RGBA pixels (Android).
-+#if SK_PMCOLOR_BYTE_ORDER(R, G, B, A)
- inline WEBP_CSP_MODE outputMode(bool hasAlpha) {
- return hasAlpha ? MODE_rgbA : MODE_RGBA;
- }
--#else // Output little-endian BGRA pixels.
-+#elif SK_PMCOLOR_BYTE_ORDER(B, G, R, A)
- inline WEBP_CSP_MODE outputMode(bool hasAlpha) {
- return hasAlpha ? MODE_bgrA : MODE_BGRA;
- }
-+#elif SK_PMCOLOR_BYTE_ORDER(A, R, G, B)
-+inline WEBP_CSP_MODE outputMode(bool hasAlpha) {
-+ return hasAlpha ? MODE_Argb : MODE_ARGB;
-+}
-+#else
-+#error Component order not supported by libwebp
- #endif
-
- namespace {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_BUILD.gn
deleted file mode 100644
index caf291334c34..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_BUILD.gn
+++ /dev/null
@@ -1,16 +0,0 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/BUILD.gn.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/BUILD.gn
-@@ -276,8 +276,12 @@ jumbo_component("wtf") {
- if (is_android) {
- libs = [ "log" ]
- }
-- if (is_linux) {
-+ if (is_linux && !is_bsd) {
- libs = [ "dl" ]
-+ }
-+
-+ if (is_bsd) {
-+ libs = [ "execinfo" ]
- }
-
- if (is_mac) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_assertions.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_assertions.cc
deleted file mode 100644
index 9b11d6d13037..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_assertions.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/assertions.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/assertions.cc
-@@ -48,7 +48,7 @@
- #include <windows.h>
- #endif
-
--#if defined(OS_MACOSX) || (defined(OS_LINUX) && !defined(__UCLIBC__))
-+#if defined(OS_MACOSX) || ((defined(OS_LINUX) || defined(OS_BSD)) && !defined(__UCLIBC__))
- #include <cxxabi.h>
- #include <dlfcn.h>
- #include <execinfo.h>
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_dtoa_utils.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_dtoa_utils.h
deleted file mode 100644
index f577fe50e8d4..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_dtoa_utils.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/dtoa/utils.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/dtoa/utils.h
-@@ -45,7 +45,7 @@
- // disabled.)
- // On Linux,x86 89255e-22 != Div_double(89255.0/1e22)
- #if defined(_M_X64) || defined(__x86_64__) || defined(__ARMEL__) || \
-- defined(__aarch64__) || defined(__MIPSEL__)
-+ defined(__aarch64__) || defined(__MIPSEL__) || defined(__powerpc64__)
- #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
- #elif defined(_M_IX86) || defined(__i386__)
- #if defined(_WIN32)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_stack__util.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_stack__util.cc
index 942c3ab3f38d..c3bf9898e807 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_stack__util.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_stack__util.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc
-@@ -16,6 +16,11 @@
+@@ -17,6 +17,11 @@
extern "C" void* __libc_stack_end; // NOLINT
#endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_threading.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_threading.cc
deleted file mode 100644
index 9319330b878f..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_wtf_threading.cc
+++ /dev/null
@@ -1,29 +0,0 @@
---- src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/threading.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/threading.cc
-@@ -17,12 +17,16 @@
- #error Blink does not support threading on your platform.
- #endif
-
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- #include <sys/syscall.h>
- #elif defined(OS_ANDROID)
- #include <sys/types.h>
- #endif
-
-+#if defined(OS_BSD)
-+#include <pthread_np.h>
-+#endif
-+
- namespace WTF {
-
- // Current thread identity
-@@ -38,6 +42,8 @@ ThreadIdentifier CurrentThreadSyscall() {
- return syscall(__NR_gettid);
- #elif defined(OS_ANDROID)
- return gettid();
-+#elif defined(OS_BSD)
-+ return pthread_getthreadid_np();
- #else
- return reinterpret_cast<uintptr_t>(pthread_self());
- #endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_gcm.c b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_gcm.c
deleted file mode 100644
index 6e9d7634e00e..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_crypto_fipsmodule_modes_gcm.c
+++ /dev/null
@@ -1,257 +0,0 @@
---- src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c
-@@ -78,6 +78,14 @@
- } \
- } while (0)
-
-+#ifdef OPENSSL_BIGENDIAN
-+#define GCM_bswap4(x) (x)
-+#define GCM_bswap8(x) (x)
-+#else
-+#define GCM_bswap4 CRYPTO_bswap4
-+#define GCM_bswap8 CRYPTO_bswap8
-+#endif
-+
- // kSizeTWithoutLower4Bits is a mask that can be used to zero the lower four
- // bits of a |size_t|.
- static const size_t kSizeTWithoutLower4Bits = (size_t) -16;
-@@ -173,8 +181,8 @@ static void gcm_gmult_4bit(uint64_t Xi[2], const u128
- Z.lo ^= Htable[nlo].lo;
- }
-
-- Xi[0] = CRYPTO_bswap8(Z.hi);
-- Xi[1] = CRYPTO_bswap8(Z.lo);
-+ Xi[0] = GCM_bswap8(Z.hi);
-+ Xi[1] = GCM_bswap8(Z.lo);
- }
-
- // Streamed gcm_mult_4bit, see CRYPTO_gcm128_[en|de]crypt for
-@@ -233,8 +241,8 @@ static void gcm_ghash_4bit(uint64_t Xi[2], const u128
- Z.lo ^= Htable[nlo].lo;
- }
-
-- Xi[0] = CRYPTO_bswap8(Z.hi);
-- Xi[1] = CRYPTO_bswap8(Z.lo);
-+ Xi[0] = GCM_bswap8(Z.hi);
-+ Xi[1] = GCM_bswap8(Z.lo);
- } while (inp += 16, len -= 16);
- }
- #else // GHASH_ASM
-@@ -360,8 +368,8 @@ void CRYPTO_ghash_init(gmult_func *out_mult, ghash_fun
- OPENSSL_memcpy(H.c, gcm_key, 16);
-
- // H is stored in host byte order
-- H.u[0] = CRYPTO_bswap8(H.u[0]);
-- H.u[1] = CRYPTO_bswap8(H.u[1]);
-+ H.u[0] = GCM_bswap8(H.u[0]);
-+ H.u[1] = GCM_bswap8(H.u[1]);
-
- OPENSSL_memcpy(out_key, H.c, 16);
-
-@@ -474,15 +482,15 @@ void CRYPTO_gcm128_setiv(GCM128_CONTEXT *ctx, const AE
- GCM_MUL(ctx, Yi);
- }
- len0 <<= 3;
-- ctx->Yi.u[1] ^= CRYPTO_bswap8(len0);
-+ ctx->Yi.u[1] ^= GCM_bswap8(len0);
-
- GCM_MUL(ctx, Yi);
-- ctr = CRYPTO_bswap4(ctx->Yi.d[3]);
-+ ctr = GCM_bswap4(ctx->Yi.d[3]);
- }
-
- (*ctx->gcm_key.block)(ctx->Yi.c, ctx->EK0.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- }
-
- int CRYPTO_gcm128_aad(GCM128_CONTEXT *ctx, const uint8_t *aad, size_t len) {
-@@ -580,7 +588,7 @@ int CRYPTO_gcm128_encrypt(GCM128_CONTEXT *ctx, const A
- ctx->ares = 0;
- }
-
-- ctr = CRYPTO_bswap4(ctx->Yi.d[3]);
-+ ctr = GCM_bswap4(ctx->Yi.d[3]);
-
- n = ctx->mres;
- if (n) {
-@@ -602,7 +610,7 @@ int CRYPTO_gcm128_encrypt(GCM128_CONTEXT *ctx, const A
- if (n == 0) {
- (*block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- }
- ctx->Xi.c[n] ^= out[i] = in[i] ^ ctx->EKi.c[n];
- n = (n + 1) % 16;
-@@ -621,7 +629,7 @@ int CRYPTO_gcm128_encrypt(GCM128_CONTEXT *ctx, const A
- while (j) {
- (*block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- for (size_t i = 0; i < 16; i += sizeof(size_t)) {
- store_word_le(out + i,
- load_word_le(in + i) ^ ctx->EKi.t[i / sizeof(size_t)]);
-@@ -638,7 +646,7 @@ int CRYPTO_gcm128_encrypt(GCM128_CONTEXT *ctx, const A
- while (len >= 16) {
- (*block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- for (size_t i = 0; i < 16; i += sizeof(size_t)) {
- store_word_le(out + i,
- load_word_le(in + i) ^ ctx->EKi.t[i / sizeof(size_t)]);
-@@ -653,7 +661,7 @@ int CRYPTO_gcm128_encrypt(GCM128_CONTEXT *ctx, const A
- while (len >= 16) {
- (*block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- for (size_t i = 0; i < 16; i += sizeof(size_t)) {
- size_t tmp = load_word_le(in + i) ^ ctx->EKi.t[i / sizeof(size_t)];
- store_word_le(out + i, tmp);
-@@ -668,7 +676,7 @@ int CRYPTO_gcm128_encrypt(GCM128_CONTEXT *ctx, const A
- if (len) {
- (*block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- while (len--) {
- ctx->Xi.c[n] ^= out[n] = in[n] ^ ctx->EKi.c[n];
- ++n;
-@@ -707,7 +715,7 @@ int CRYPTO_gcm128_decrypt(GCM128_CONTEXT *ctx, const A
- ctx->ares = 0;
- }
-
-- ctr = CRYPTO_bswap4(ctx->Yi.d[3]);
-+ ctr = GCM_bswap4(ctx->Yi.d[3]);
-
- n = ctx->mres;
- if (n) {
-@@ -732,7 +740,7 @@ int CRYPTO_gcm128_decrypt(GCM128_CONTEXT *ctx, const A
- if (n == 0) {
- (*block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- }
- c = in[i];
- out[i] = c ^ ctx->EKi.c[n];
-@@ -754,7 +762,7 @@ int CRYPTO_gcm128_decrypt(GCM128_CONTEXT *ctx, const A
- while (j) {
- (*block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- for (size_t i = 0; i < 16; i += sizeof(size_t)) {
- store_word_le(out + i,
- load_word_le(in + i) ^ ctx->EKi.t[i / sizeof(size_t)]);
-@@ -771,7 +779,7 @@ int CRYPTO_gcm128_decrypt(GCM128_CONTEXT *ctx, const A
- while (len >= 16) {
- (*block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- for (size_t i = 0; i < 16; i += sizeof(size_t)) {
- store_word_le(out + i,
- load_word_le(in + i) ^ ctx->EKi.t[i / sizeof(size_t)]);
-@@ -785,7 +793,7 @@ int CRYPTO_gcm128_decrypt(GCM128_CONTEXT *ctx, const A
- while (len >= 16) {
- (*block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- for (size_t i = 0; i < 16; i += sizeof(size_t)) {
- size_t c = load_word_le(in + i);
- store_word_le(out + i, c ^ ctx->EKi.t[i / sizeof(size_t)]);
-@@ -800,7 +808,7 @@ int CRYPTO_gcm128_decrypt(GCM128_CONTEXT *ctx, const A
- if (len) {
- (*block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- while (len--) {
- uint8_t c = in[n];
- ctx->Xi.c[n] ^= c;
-@@ -866,13 +874,13 @@ int CRYPTO_gcm128_encrypt_ctr32(GCM128_CONTEXT *ctx, c
- }
- #endif
-
-- ctr = CRYPTO_bswap4(ctx->Yi.d[3]);
-+ ctr = GCM_bswap4(ctx->Yi.d[3]);
-
- #if defined(GHASH)
- while (len >= GHASH_CHUNK) {
- (*stream)(in, out, GHASH_CHUNK / 16, key, ctx->Yi.c);
- ctr += GHASH_CHUNK / 16;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- GHASH(ctx, out, GHASH_CHUNK);
- out += GHASH_CHUNK;
- in += GHASH_CHUNK;
-@@ -885,7 +893,7 @@ int CRYPTO_gcm128_encrypt_ctr32(GCM128_CONTEXT *ctx, c
-
- (*stream)(in, out, j, key, ctx->Yi.c);
- ctr += (unsigned int)j;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- in += i;
- len -= i;
- #if defined(GHASH)
-@@ -904,7 +912,7 @@ int CRYPTO_gcm128_encrypt_ctr32(GCM128_CONTEXT *ctx, c
- if (len) {
- (*ctx->gcm_key.block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- while (len--) {
- ctx->Xi.c[n] ^= out[n] = in[n] ^ ctx->EKi.c[n];
- ++n;
-@@ -970,14 +978,14 @@ int CRYPTO_gcm128_decrypt_ctr32(GCM128_CONTEXT *ctx, c
- }
- #endif
-
-- ctr = CRYPTO_bswap4(ctx->Yi.d[3]);
-+ ctr = GCM_bswap4(ctx->Yi.d[3]);
-
- #if defined(GHASH)
- while (len >= GHASH_CHUNK) {
- GHASH(ctx, in, GHASH_CHUNK);
- (*stream)(in, out, GHASH_CHUNK / 16, key, ctx->Yi.c);
- ctr += GHASH_CHUNK / 16;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- out += GHASH_CHUNK;
- in += GHASH_CHUNK;
- len -= GHASH_CHUNK;
-@@ -1003,7 +1011,7 @@ int CRYPTO_gcm128_decrypt_ctr32(GCM128_CONTEXT *ctx, c
- #endif
- (*stream)(in, out, j, key, ctx->Yi.c);
- ctr += (unsigned int)j;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- out += i;
- in += i;
- len -= i;
-@@ -1011,7 +1019,7 @@ int CRYPTO_gcm128_decrypt_ctr32(GCM128_CONTEXT *ctx, c
- if (len) {
- (*ctx->gcm_key.block)(ctx->Yi.c, ctx->EKi.c, key);
- ++ctr;
-- ctx->Yi.d[3] = CRYPTO_bswap4(ctr);
-+ ctx->Yi.d[3] = GCM_bswap4(ctr);
- while (len--) {
- uint8_t c = in[n];
- ctx->Xi.c[n] ^= c;
-@@ -1036,8 +1044,8 @@ int CRYPTO_gcm128_finish(GCM128_CONTEXT *ctx, const ui
- GCM_MUL(ctx, Xi);
- }
-
-- alen = CRYPTO_bswap8(alen);
-- clen = CRYPTO_bswap8(clen);
-+ alen = GCM_bswap8(alen);
-+ clen = GCM_bswap8(clen);
-
- ctx->Xi.u[0] ^= alen;
- ctx->Xi.u[1] ^= clen;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_third__party_fiat_curve25519.c b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_third__party_fiat_curve25519.c
index 52178ba0908e..cfda551ca787 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_third__party_fiat_curve25519.c
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_third__party_fiat_curve25519.c
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/third_party/boringssl/src/third_party/fiat/curve25519.c.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/boringssl/src/third_party/fiat/curve25519.c.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/boringssl/src/third_party/fiat/curve25519.c
-@@ -3032,9 +3032,14 @@ int ED25519_verify(const uint8_t *message, size_t mess
+@@ -1964,9 +1964,14 @@ int ED25519_verify(const uint8_t *message, size_t mess
UINT64_C(0x1000000000000000),
};
for (size_t i = 3;; i--) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_third__party_fiat_p256.c b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_third__party_fiat_p256.c
deleted file mode 100644
index 130ec5ee1254..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_third__party_fiat_p256.c
+++ /dev/null
@@ -1,51 +0,0 @@
---- src/3rdparty/chromium/third_party/boringssl/src/third_party/fiat/p256.c.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/boringssl/src/third_party/fiat/p256.c
-@@ -882,12 +882,24 @@ static void fe_tobytes(uint8_t out[NBYTES], const fe i
- }
- }
-
-+#ifdef OPENSSL_BIGENDIAN
-+static void fe_tobytes_be(uint8_t out[NBYTES], const fe in) {
-+ for (int i = 0; i<NBYTES; i++) {
-+ out[i ^ (BN_BYTES-1)] = (uint8_t)(in[i/sizeof(in[0])] >> (8*(i%sizeof(in[0]))));
-+ }
-+}
-+#endif
-+
- static void fe_frombytes(fe out, const uint8_t in[NBYTES]) {
- for (int i = 0; i<NLIMBS; i++) {
- out[i] = 0;
- }
- for (int i = 0; i<NBYTES; i++) {
-+#ifdef OPENSSL_BIGENDIAN
-+ out[i/sizeof(out[0])] |= ((limb_t)in[i ^ (BN_BYTES-1)]) << (8*(i%sizeof(out[0])));
-+#else
- out[i/sizeof(out[0])] |= ((limb_t)in[i]) << (8*(i%sizeof(out[0])));
-+#endif
- }
- }
-
-@@ -906,7 +918,11 @@ static void fe_to_generic(EC_FELEM *out, const fe in)
- OPENSSL_STATIC_ASSERT(
- 256 / 8 == sizeof(BN_ULONG) * ((256 + BN_BITS2 - 1) / BN_BITS2),
- "fe_tobytes leaves bytes uninitialized");
-+#ifdef OPENSSL_BIGENDIAN
-+ fe_tobytes_be(out->bytes, in);
-+#else
- fe_tobytes(out->bytes, in);
-+#endif
- }
-
- // fe_inv calculates |out| = |in|^{-1}
-@@ -1524,7 +1540,11 @@ static char get_bit(const uint8_t *in, int i) {
- if (i < 0 || i >= 256) {
- return 0;
- }
-+#ifdef OPENSSL_BIGENDIAN
-+ return (in[(i >> 3) ^ (sizeof(BN_ULONG)-1)] >> (i & 7)) & 1;
-+#else
- return (in[i >> 3] >> (i & 7)) & 1;
-+#endif
- }
-
- // Interleaved point multiplication using precomputed point multiples: The
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_nasm_config_config-linux.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_nasm_config_config-linux.h
new file mode 100644
index 000000000000..416c2a25bd69
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_nasm_config_config-linux.h
@@ -0,0 +1,29 @@
+--- src/3rdparty/chromium/third_party/nasm/config/config-linux.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/nasm/config/config-linux.h
+@@ -117,7 +117,7 @@
+ #define HAVE_ACCESS 1
+
+ /* Define to 1 if you have the `canonicalize_file_name' function. */
+-#define HAVE_CANONICALIZE_FILE_NAME 1
++/* #undef HAVE_CANONICALIZE_FILE_NAME */
+
+ /* Define to 1 if you have the `cpu_to_le16' intrinsic function. */
+ /* #undef HAVE_CPU_TO_LE16 */
+@@ -161,7 +161,7 @@
+ #define HAVE_DECL_STRSEP 1
+
+ /* Define to 1 if you have the <endian.h> header file. */
+-#define HAVE_ENDIAN_H 1
++/* #undef HAVE_ENDIAN_H */
+
+ /* Define to 1 if you have the `faccessat' function. */
+ #define HAVE_FACCESSAT 1
+@@ -322,7 +322,7 @@
+ #define HAVE_SYSCONF 1
+
+ /* Define to 1 if you have the <sys/endian.h> header file. */
+-/* #undef HAVE_SYS_ENDIAN_H */
++#define HAVE_SYS_ENDIAN_H 1
+
+ /* Define to 1 if you have the <sys/mman.h> header file. */
+ #define HAVE_SYS_MMAN_H 1
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxcrt_cfx__datetime.cpp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxcrt_cfx__datetime.cpp
new file mode 100644
index 000000000000..863a0171ff97
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxcrt_cfx__datetime.cpp
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/third_party/pdfium/core/fxcrt/cfx_datetime.cpp.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/pdfium/core/fxcrt/cfx_datetime.cpp
+@@ -9,7 +9,7 @@
+ #include "build/build_config.h"
+ #include "core/fxcrt/fx_system.h"
+
+-#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_MACOSX) || \
++#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD) || \
+ defined(OS_ASMJS) || defined(__wasm__)
+ #include <sys/time.h>
+ #include <time.h>
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxcrt_fx__system.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxcrt_fx__system.h
index 70635a2cf151..fa311642d5d6 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxcrt_fx__system.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxcrt_fx__system.h
@@ -1,11 +1,11 @@
---- src/3rdparty/chromium/third_party/pdfium/core/fxcrt/fx_system.h.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/third_party/pdfium/core/fxcrt/fx_system.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/pdfium/core/fxcrt/fx_system.h
-@@ -41,7 +41,7 @@
+@@ -26,7 +26,7 @@
+ #define _FX_PLATFORM_ _FX_PLATFORM_WINDOWS_
#elif defined(_WIN64)
- #define _FX_OS_ _FX_OS_WIN64_
#define _FX_PLATFORM_ _FX_PLATFORM_WINDOWS_
-#elif defined(__linux__)
+#elif defined(__linux__) || defined(__FreeBSD__)
- #define _FX_OS_ _FX_OS_LINUX_
#define _FX_PLATFORM_ _FX_PLATFORM_LINUX_
#elif defined(__APPLE__)
+ #define _FX_PLATFORM_ _FX_PLATFORM_APPLE_
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_allocator_partition__allocator_page__allocator.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_allocator_partition__allocator_page__allocator.cc
new file mode 100644
index 000000000000..86ac568ab5a7
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_allocator_partition__allocator_page__allocator.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/third_party/pdfium/third_party/base/allocator/partition_allocator/page_allocator.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/pdfium/third_party/base/allocator/partition_allocator/page_allocator.cc
+@@ -117,7 +117,7 @@ void* AllocPages(void* address,
+ uintptr_t align_base_mask = ~align_offset_mask;
+ DCHECK(!(reinterpret_cast<uintptr_t>(address) & align_offset_mask));
+
+-#if defined(OS_LINUX) && defined(ARCH_CPU_64_BITS)
++#if (defined(OS_LINUX) || defined(OS_BSD)) && defined(ARCH_CPU_64_BITS)
+ // On 64 bit Linux, we may need to adjust the address space limit for
+ // guarded allocations.
+ if (length >= kMinimumGuardedMemorySize) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_allocator_partition__allocator_page__allocator__internals__posix.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_allocator_partition__allocator_page__allocator__internals__posix.h
new file mode 100644
index 000000000000..eec48567f03c
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_third__party_base_allocator_partition__allocator_page__allocator__internals__posix.h
@@ -0,0 +1,38 @@
+--- src/3rdparty/chromium/third_party/pdfium/third_party/base/allocator/partition_allocator/page_allocator_internals_posix.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/pdfium/third_party/base/allocator/partition_allocator/page_allocator_internals_posix.h
+@@ -13,7 +13,7 @@
+ #if defined(OS_MACOSX)
+ #include <mach/mach.h>
+ #endif
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ #include <sys/resource.h>
+
+ #include <algorithm>
+@@ -48,7 +48,7 @@ int GetAccessFlags(PageAccessibilityConfiguration acce
+ }
+ }
+
+-#if defined(OS_LINUX) && defined(ARCH_CPU_64_BITS)
++#if (defined(OS_LINUX) || defined(OS_BSD)) && defined(ARCH_CPU_64_BITS)
+
+ // Multiple guarded memory regions may exceed the process address space limit.
+ // This function will raise or lower the limit by |amount|.
+@@ -68,7 +68,7 @@ bool AdjustAddressSpaceLimit(int64_t amount) {
+ // schemes that reduce that to 4 GiB.
+ constexpr size_t kMinimumGuardedMemorySize = 1ULL << 32; // 4 GiB
+
+-#endif // defined(OS_LINUX) && defined(ARCH_CPU_64_BITS)
++#endif // (defined(OS_LINUX) || defined(OS_BSD)) && defined(ARCH_CPU_64_BITS)
+
+ void* SystemAllocPagesInternal(void* hint,
+ size_t length,
+@@ -134,7 +134,7 @@ void SetSystemPagesAccessInternal(
+ void FreePagesInternal(void* address, size_t length) {
+ CHECK(!munmap(address, length));
+
+-#if defined(OS_LINUX) && defined(ARCH_CPU_64_BITS)
++#if (defined(OS_LINUX) || defined(OS_BSD)) && defined(ARCH_CPU_64_BITS)
+ // Restore the address space limit.
+ if (length >= kMinimumGuardedMemorySize) {
+ CHECK(AdjustAddressSpaceLimit(-base::checked_cast<int64_t>(length)));
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_xfa_fgas_font_cfx__fontsourceenum__file.cpp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_xfa_fgas_font_cfx__fontsourceenum__file.cpp
index 5f8bc719b0e7..0126de43a412 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_xfa_fgas_font_cfx__fontsourceenum__file.cpp
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_xfa_fgas_font_cfx__fontsourceenum__file.cpp
@@ -1,14 +1,14 @@
---- src/3rdparty/chromium/third_party/pdfium/xfa/fgas/font/cfx_fontsourceenum_file.cpp.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/pdfium/xfa/fgas/font/cfx_fontsourceenum_file.cpp.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/pdfium/xfa/fgas/font/cfx_fontsourceenum_file.cpp
-@@ -14,8 +14,9 @@ constexpr char kFolderSeparator = '/';
+@@ -16,9 +16,8 @@ constexpr char kFolderSeparator = '/';
- constexpr const char* g_FontFolders[] = {
+ constexpr const char* kFontFolders[] = {
#if _FX_PLATFORM_ == _FX_PLATFORM_LINUX_
-- "/usr/share/fonts", "/usr/share/X11/fonts/Type1",
-- "/usr/share/X11/fonts/TTF", "/usr/local/share/fonts",
+- "/usr/share/fonts",
+- "/usr/share/X11/fonts/Type1",
+- "/usr/share/X11/fonts/TTF",
+ "/usr/local/share/fonts/Type1",
+ "/usr/local/share/fonts/TTF",
-+ "/usr/local/share/fonts",
- #elif _FX_PLATFORM_ == _FX_PLATFORM_APPLE_
- "~/Library/Fonts", "/Library/Fonts", "/System/Library/Fonts",
- #elif _FX_PLATFORM_ == _FX_PLATFORM_ANDROID_
+ "/usr/local/share/fonts",
+ #elif defined(OS_MACOSX)
+ "~/Library/Fonts",
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_base_build__config.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_base_build__config.h
new file mode 100644
index 000000000000..e10119401b4b
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_base_build__config.h
@@ -0,0 +1,51 @@
+--- src/3rdparty/chromium/third_party/perfetto/include/perfetto/base/build_config.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/perfetto/include/perfetto/base/build_config.h
+@@ -28,6 +28,7 @@
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_ANDROID() 1
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_MACOSX() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 0
++#define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FREEBSD() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FUCHSIA() 0
+@@ -35,13 +36,15 @@
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_ANDROID() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_MACOSX() 1
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 0
++#define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FREEBSD() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FUCHSIA() 0
+-#elif defined(__linux__)
++#elif defined(__linux__) || defined(__FreeBSD__)
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_ANDROID() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_MACOSX() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 1
++#define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FREEBSD() 1
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FUCHSIA() 0
+@@ -49,6 +52,7 @@
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_ANDROID() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_MACOSX() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 0
++#define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FREEBSD() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 1
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FUCHSIA() 0
+@@ -56,6 +60,7 @@
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_ANDROID() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_MACOSX() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 0
++#define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FREEBSD() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 1
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FUCHSIA() 0
+@@ -63,6 +68,7 @@
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_ANDROID() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_MACOSX() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 0
++#define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FREEBSD() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 0
+ #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FUCHSIA() 1
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_event__fd.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_event__fd.h
new file mode 100644
index 000000000000..9abb0857bdd1
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_event__fd.h
@@ -0,0 +1,13 @@
+--- src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/event_fd.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/event_fd.h
+@@ -20,8 +20,8 @@
+ #include "perfetto/base/build_config.h"
+ #include "perfetto/ext/base/scoped_file.h"
+
+-#if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) || \
+- PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID)
++#if !PERFETTO_BUILDFLAG(PERFETTO_OS_FREEBSD) && (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) || \
++ PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID))
+ #define PERFETTO_USE_EVENTFD() 1
+ #else
+ #define PERFETTO_USE_EVENTFD() 0
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_thread__utils.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_thread__utils.h
new file mode 100644
index 000000000000..f3dd4837df7c
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_thread__utils.h
@@ -0,0 +1,24 @@
+--- src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/thread_utils.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/thread_utils.h
+@@ -33,6 +33,9 @@
+ #include <sys/types.h>
+ #include <unistd.h>
+ #endif
++#if PERFETTO_BUILDFLAG(PERFETTO_OS_FREEBSD)
++#include <pthread_np.h>
++#endif
+
+ namespace perfetto {
+ namespace base {
+@@ -41,6 +44,11 @@ namespace base {
+ using PlatformThreadID = pid_t;
+ inline PlatformThreadID GetThreadId() {
+ return gettid();
++}
++#elif PERFETTO_BUILDFLAG(PERFETTO_OS_FREEBSD)
++using PlatformThreadID = int;
++inline PlatformThreadID GetThreadId() {
++ return pthread_getthreadid_np();
+ }
+ #elif PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX)
+ using PlatformThreadID = pid_t;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_time.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_time.h
new file mode 100644
index 000000000000..b5b966160dfd
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_time.h
@@ -0,0 +1,20 @@
+--- src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/time.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/time.h
+@@ -123,6 +123,9 @@ inline TimeNanos GetTimeInternalNs(clockid_t clk_id) {
+ // Return ns from boot. Conversely to GetWallTimeNs, this clock counts also time
+ // during suspend (when supported).
+ inline TimeNanos GetBootTimeNs() {
++#if PERFETTO_BUILDFLAG(PERFETTO_OS_FREEBSD)
++ return GetTimeInternalNs(kWallTimeClockSource);
++#else
+ // Determine if CLOCK_BOOTTIME is available on the first call.
+ static const clockid_t kBootTimeClockSource = [] {
+ struct timespec ts = {};
+@@ -130,6 +133,7 @@ inline TimeNanos GetBootTimeNs() {
+ return res == 0 ? CLOCK_BOOTTIME : kWallTimeClockSource;
+ }();
+ return GetTimeInternalNs(kBootTimeClockSource);
++#endif
+ }
+
+ inline TimeNanos GetWallTimeNs() {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_base_utils.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_utils.h
index 4d5fa0f9d435..c001d857092a 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_base_utils.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_utils.h
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/third_party/perfetto/include/perfetto/base/utils.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/perfetto/include/perfetto/base/utils.h
-@@ -22,6 +22,7 @@
+--- src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/utils.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/utils.h
+@@ -23,6 +23,7 @@
#include <errno.h>
#include <stddef.h>
#include <stdlib.h>
@@ -8,7 +8,7 @@
#if !PERFETTO_BUILDFLAG(PERFETTO_OS_WIN)
#include <sys/types.h>
#endif
-@@ -91,7 +92,7 @@ struct FreeDeleter {
+@@ -72,7 +73,7 @@ struct FreeDeleter {
template <typename T>
constexpr T AssumeLittleEndian(T value) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_base_unix__socket.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_base_unix__socket.cc
new file mode 100644
index 000000000000..35b38245cb6b
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_base_unix__socket.cc
@@ -0,0 +1,12 @@
+--- src/3rdparty/chromium/third_party/perfetto/src/base/unix_socket.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/perfetto/src/base/unix_socket.cc
+@@ -523,7 +523,8 @@ void UnixSocket::DoConnect(const std::string& socket_n
+
+ void UnixSocket::ReadPeerCredentials() {
+ #if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) || \
+- PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID)
++ PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) || \
++ PERFETTO_BUILDFLAG(PERFETTO_OS_FREEBSD)
+ struct ucred user_cred;
+ socklen_t len = sizeof(user_cred);
+ int fd = sock_raw_.fd();
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_protozero_proto__decoder.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_protozero_proto__decoder.cc
index 5fba8a56f8e4..c74dc5f0bb90 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_protozero_proto__decoder.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_protozero_proto__decoder.cc
@@ -1,12 +1,12 @@
---- src/3rdparty/chromium/third_party/perfetto/src/protozero/proto_decoder.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/perfetto/src/protozero/proto_decoder.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/perfetto/src/protozero/proto_decoder.cc
-@@ -29,7 +29,8 @@ using namespace proto_utils;
- #define BYTE_SWAP_TO_LE32(x) (x)
- #define BYTE_SWAP_TO_LE64(x) (x)
- #else
+@@ -28,7 +28,8 @@ namespace protozero {
+ using namespace proto_utils;
+
+ #if __BYTE_ORDER__ != __ORDER_LITTLE_ENDIAN__
-#error Unimplemented for big endian archs.
+#define BYTE_SWAP_TO_LE32(x) __builtin_bswap32(x)
+#define BYTE_SWAP_TO_LE64(x) __builtin_bswap64(x)
#endif
- ProtoDecoder::Field ProtoDecoder::ReadField() {
+ namespace {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_core_tracing__service__impl.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_core_tracing__service__impl.cc
new file mode 100644
index 000000000000..ffd3e5068259
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_core_tracing__service__impl.cc
@@ -0,0 +1,12 @@
+--- src/3rdparty/chromium/third_party/perfetto/src/tracing/core/tracing_service_impl.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/third_party/perfetto/src/tracing/core/tracing_service_impl.cc
+@@ -2136,7 +2136,8 @@ void TracingServiceImpl::SnapshotClocks(std::vector<Tr
+ protos::ClockSnapshot* clock_snapshot = packet.mutable_clock_snapshot();
+
+ #if !PERFETTO_BUILDFLAG(PERFETTO_OS_MACOSX) && \
+- !PERFETTO_BUILDFLAG(PERFETTO_OS_WIN)
++ !PERFETTO_BUILDFLAG(PERFETTO_OS_WIN) && \
++ !PERFETTO_BUILDFLAG(PERFETTO_OS_FREEBSD)
+ struct {
+ clockid_t id;
+ protos::ClockSnapshot::Clock::Type type;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_include_core_SkPostConfig.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_include_core_SkPostConfig.h
deleted file mode 100644
index 138bfb91eb46..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_include_core_SkPostConfig.h
+++ /dev/null
@@ -1,15 +0,0 @@
---- src/3rdparty/chromium/third_party/skia/include/core/SkPostConfig.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/skia/include/core/SkPostConfig.h
-@@ -40,12 +40,6 @@
- # error "must define either SK_CPU_LENDIAN or SK_CPU_BENDIAN"
- #endif
-
--#if defined(SK_CPU_BENDIAN) && !defined(I_ACKNOWLEDGE_SKIA_DOES_NOT_SUPPORT_BIG_ENDIAN)
-- #error "The Skia team is not endian-savvy enough to support big-endian CPUs."
-- #error "If you still want to use Skia,"
-- #error "please define I_ACKNOWLEDGE_SKIA_DOES_NOT_SUPPORT_BIG_ENDIAN."
--#endif
--
- /**
- * Ensure the port has defined all of SK_X32_SHIFT, or none of them.
- */
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_codec_SkCodecPriv.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_codec_SkCodecPriv.h
deleted file mode 100644
index 046b4f369c01..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_codec_SkCodecPriv.h
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/3rdparty/chromium/third_party/skia/src/codec/SkCodecPriv.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/skia/src/codec/SkCodecPriv.h
-@@ -14,6 +14,7 @@
- #include "SkEncodedOrigin.h"
- #include "SkImageInfo.h"
- #include "SkTypes.h"
-+#include "SkEndian.h"
-
- #ifdef SK_PRINT_CODEC_MESSAGES
- #define SkCodecPrintf SkDebugf
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_opts_SkRasterPipeline__opts.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_opts_SkRasterPipeline__opts.h
deleted file mode 100644
index ad6b3b0fe9a1..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_opts_SkRasterPipeline__opts.h
+++ /dev/null
@@ -1,130 +0,0 @@
---- src/3rdparty/chromium/third_party/skia/src/opts/SkRasterPipeline_opts.h.orig 2019-10-27 17:19:53 UTC
-+++ src/3rdparty/chromium/third_party/skia/src/opts/SkRasterPipeline_opts.h
-@@ -729,7 +729,10 @@ SI F approx_powf(F x, F y) {
- }
-
- SI F from_half(U16 h) {
--#if defined(SK_CPU_ARM64) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
-+#if defined(SK_CPU_ARM64) && !defined(SK_BUILD_FOR_GOOGLE3) && defined(__aarch64__) // Required to build on FreeBSD aarch64
-+ return vcvt_f32_f16(h);
-+
-+#elif defined(SK_CPU_ARM64) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
- __fp16 fp16;
- memcpy(&fp16, &h, sizeof(U16));
- return float(fp16);
-@@ -751,7 +754,10 @@ SI F from_half(U16 h) {
- }
-
- SI U16 to_half(F f) {
--#if defined(SK_CPU_ARM64) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
-+#if defined(SK_CPU_ARM64) && !defined(SK_BUILD_FOR_GOOGLE3) && defined(__aarch64__) // Required to build on FreeBSD aarch64
-+ return vcvt_f16_f32(f);
-+
-+#elif defined(SK_CPU_ARM64) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
- __fp16 fp16 = __fp16(f);
- U16 u16;
- memcpy(&u16, &fp16, sizeof(U16));
-@@ -954,10 +954,17 @@ SI void from_4444(U16 _4444, F* r, F* g, F* b, F* a) {
- *a = cast(wide & (15<< 0)) * (1.0f / (15<< 0));
- }
- SI void from_8888(U32 _8888, F* r, F* g, F* b, F* a) {
-+#ifdef SK_CPU_BENDIAN
-+ *r = cast((_8888 >> 24) ) * (1/255.0f);
-+ *g = cast((_8888 >> 16) & 0xff) * (1/255.0f);
-+ *b = cast((_8888 >> 8) & 0xff) * (1/255.0f);
-+ *a = cast((_8888 ) & 0xff) * (1/255.0f);
-+#else
- *r = cast((_8888 ) & 0xff) * (1/255.0f);
- *g = cast((_8888 >> 8) & 0xff) * (1/255.0f);
- *b = cast((_8888 >> 16) & 0xff) * (1/255.0f);
- *a = cast((_8888 >> 24) ) * (1/255.0f);
-+#endif
- }
- SI void from_1010102(U32 rgba, F* r, F* g, F* b, F* a) {
- *r = cast((rgba ) & 0x3ff) * (1/1023.0f);
-@@ -1284,10 +1291,17 @@ STAGE(srcover_rgba_8888, const SkRasterPipeline_Memory
- auto ptr = ptr_at_xy<uint32_t>(ctx, dx,dy);
-
- U32 dst = load<U32>(ptr, tail);
-+#ifdef SK_CPU_BENDIAN
-+ dr = cast((dst >> 24) );
-+ dg = cast((dst >> 16) & 0xff);
-+ db = cast((dst >> 8) & 0xff);
-+ da = cast((dst ) & 0xff);
-+#else
- dr = cast((dst ) & 0xff);
- dg = cast((dst >> 8) & 0xff);
- db = cast((dst >> 16) & 0xff);
- da = cast((dst >> 24) );
-+#endif
- // {dr,dg,db,da} are in [0,255]
- // { r, g, b, a} are in [0, 1] (but may be out of gamut)
-
-@@ -1298,10 +1312,17 @@ STAGE(srcover_rgba_8888, const SkRasterPipeline_Memory
- // { r, g, b, a} are now in [0,255] (but may be out of gamut)
-
- // to_unorm() clamps back to gamut. Scaling by 1 since we're already 255-biased.
-+#ifdef SK_CPU_BENDIAN
-+ dst = to_unorm(r, 1, 255) << 24
-+ | to_unorm(g, 1, 255) << 16
-+ | to_unorm(b, 1, 255) << 8
-+ | to_unorm(a, 1, 255);
-+#else
- dst = to_unorm(r, 1, 255)
- | to_unorm(g, 1, 255) << 8
- | to_unorm(b, 1, 255) << 16
- | to_unorm(a, 1, 255) << 24;
-+#endif
- store(ptr, dst, tail);
- }
-
-@@ -1700,10 +1721,17 @@ STAGE(gather_8888, const SkRasterPipeline_GatherCtx* c
- STAGE(store_8888, const SkRasterPipeline_MemoryCtx* ctx) {
- auto ptr = ptr_at_xy<uint32_t>(ctx, dx,dy);
-
-+#ifdef SK_CPU_BENDIAN
-+ U32 px = to_unorm(r, 255) << 24
-+ | to_unorm(g, 255) << 16
-+ | to_unorm(b, 255) << 8
-+ | to_unorm(a, 255);
-+#else
- U32 px = to_unorm(r, 255)
- | to_unorm(g, 255) << 8
- | to_unorm(b, 255) << 16
- | to_unorm(a, 255) << 24;
-+#endif
- store(ptr, px, tail);
- }
-
-@@ -2858,10 +2886,17 @@ SI void from_8888(U32 rgba, U16* r, U16* g, U16* b, U1
- return cast<U16>(v);
- };
- #endif
-+#ifdef SK_CPU_BENDIAN
-+ *r = cast_U16(rgba >> 16) >> 8;
-+ *g = cast_U16(rgba >> 16) & 255;
-+ *b = cast_U16(rgba & 65535) >> 8;
-+ *a = cast_U16(rgba & 65535) & 255;
-+#else
- *r = cast_U16(rgba & 65535) & 255;
- *g = cast_U16(rgba & 65535) >> 8;
- *b = cast_U16(rgba >> 16) & 255;
- *a = cast_U16(rgba >> 16) >> 8;
-+#endif
- }
-
- SI void load_8888_(const uint32_t* ptr, size_t tail, U16* r, U16* g, U16* b, U16* a) {
-@@ -2904,8 +2939,13 @@ SI void store_8888_(uint32_t* ptr, size_t tail, U16 r,
- case 1: vst4_lane_u8((uint8_t*)(ptr+0), rgba, 0);
- }
- #else
-+#ifdef SK_CPU_BENDIAN
-+ store(ptr, tail, cast<U32>((r<<8) | g) << 16
-+ | cast<U32>((b<<8) | a) << 0);
-+#else
- store(ptr, tail, cast<U32>(r | (g<<8)) << 0
- | cast<U32>(b | (a<<8)) << 16);
-+#endif
- #endif
- }
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_ports_SkFontHost__FreeType.cpp b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_ports_SkFontHost__FreeType.cpp
deleted file mode 100644
index 6d47c2f0401d..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_src_ports_SkFontHost__FreeType.cpp
+++ /dev/null
@@ -1,77 +0,0 @@
---- src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp
-@@ -122,8 +122,6 @@ class FreeTypeLibrary : SkNoncopyable { (public)
- : fGetVarDesignCoordinates(nullptr)
- , fGetVarAxisFlags(nullptr)
- , fLibrary(nullptr)
-- , fIsLCDSupported(false)
-- , fLCDExtra(0)
- {
- if (FT_New_Library(&gFTMemory, &fLibrary)) {
- return;
-@@ -183,12 +181,7 @@ class FreeTypeLibrary : SkNoncopyable { (public)
- }
- #endif
-
-- // Setup LCD filtering. This reduces color fringes for LCD smoothed glyphs.
-- // The default has changed over time, so this doesn't mean the same thing to all users.
-- if (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) {
-- fIsLCDSupported = true;
-- fLCDExtra = 2; //Using a filter adds one full pixel to each side.
-- }
-+ FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT);
- }
- ~FreeTypeLibrary() {
- if (fLibrary) {
-@@ -197,8 +190,6 @@ class FreeTypeLibrary : SkNoncopyable { (public)
- }
-
- FT_Library library() { return fLibrary; }
-- bool isLCDSupported() { return fIsLCDSupported; }
-- int lcdExtra() { return fLCDExtra; }
-
- // FT_Get_{MM,Var}_{Blend,Design}_Coordinates were added in FreeType 2.7.1.
- // Prior to this there was no way to get the coordinates out of the FT_Face.
-@@ -215,8 +206,6 @@ class FreeTypeLibrary : SkNoncopyable { (public)
-
- private:
- FT_Library fLibrary;
-- bool fIsLCDSupported;
-- int fLCDExtra;
-
- // FT_Library_SetLcdFilterWeights was introduced in FreeType 2.4.0.
- // The following platforms provide FreeType of at least 2.4.0.
-@@ -713,17 +702,6 @@ void SkTypeface_FreeType::onFilterRec(SkScalerContextR
- rec->fTextSize = SkIntToScalar(1 << 14);
- }
-
-- if (isLCD(*rec)) {
-- // TODO: re-work so that FreeType is set-up and selected by the SkFontMgr.
-- SkAutoMutexAcquire ama(gFTMutex);
-- ref_ft_library();
-- if (!gFTLibrary->isLCDSupported()) {
-- // If the runtime Freetype library doesn't support LCD, disable it here.
-- rec->fMaskFormat = SkMask::kA8_Format;
-- }
-- unref_ft_library();
-- }
--
- SkFontHinting h = rec->getHinting();
- if (kFull_SkFontHinting == h && !isLCD(*rec)) {
- // collapse full->normal hinting if we're not doing LCD
-@@ -1121,11 +1099,11 @@ bool SkScalerContext_FreeType::getCBoxForLetter(char l
- void SkScalerContext_FreeType::updateGlyphIfLCD(SkGlyph* glyph) {
- if (glyph->fMaskFormat == SkMask::kLCD16_Format) {
- if (fLCDIsVert) {
-- glyph->fHeight += gFTLibrary->lcdExtra();
-- glyph->fTop -= gFTLibrary->lcdExtra() >> 1;
-+ glyph->fHeight += 2;
-+ glyph->fTop -= 1;
- } else {
-- glyph->fWidth += gFTLibrary->lcdExtra();
-- glyph->fLeft -= gFTLibrary->lcdExtra() >> 1;
-+ glyph->fWidth += 2;
-+ glyph->fLeft -= 1;
- }
- }
- }
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_third__party_skcms_src_Transform__inl.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_third__party_skcms_src_Transform__inl.h
deleted file mode 100644
index f9cd93b7b83b..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_skia_third__party_skcms_src_Transform__inl.h
+++ /dev/null
@@ -1,400 +0,0 @@
---- src/3rdparty/chromium/third_party/skia/third_party/skcms/src/Transform_inl.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/skia/third_party/skcms/src/Transform_inl.h
-@@ -392,9 +392,11 @@ SI U32 gather_32(const uint8_t* p, I32 ix) {
- }
-
- SI U32 gather_24(const uint8_t* p, I32 ix) {
-+#if !__BIG_ENDIAN__
- // First, back up a byte. Any place we're gathering from has a safe junk byte to read
- // in front of it, either a previous table value, or some tag metadata.
- p -= 1;
-+#endif
-
- // Load the i'th 24-bit value from p, and 1 extra byte.
- auto load_24_32 = [p](int i) {
-@@ -435,8 +437,10 @@ SI U32 gather_24(const uint8_t* p, I32 ix) {
-
- #if !defined(__arm__)
- SI void gather_48(const uint8_t* p, I32 ix, U64* v) {
-+#if !__BIG_ENDIAN__
- // As in gather_24(), with everything doubled.
- p -= 2;
-+#endif
-
- // Load the i'th 48-bit value from p, and 2 extra bytes.
- auto load_48_64 = [p](int i) {
-@@ -499,7 +503,9 @@ SI F F_from_U8(U8 v) {
- SI F F_from_U16_BE(U16 v) {
- // All 16-bit ICC values are big-endian, so we byte swap before converting to float.
- // MSVC catches the "loss" of data here in the portable path, so we also make sure to mask.
-+#if !__BIG_ENDIAN__
- v = U16( 0 | ((v & 0x00ff) << 8) | ((v & 0xff00) >> 8) );
-+#endif
- return cast<F>(v) * (1/65535.0f);
- }
-
-@@ -534,9 +540,15 @@ SI F table(const skcms_Curve* curve, F v) {
- SI void sample_clut_8(const skcms_A2B* a2b, I32 ix, F* r, F* g, F* b) {
- U32 rgb = gather_24(a2b->grid_8, ix);
-
-+#if __BIG_ENDIAN__
-+ *r = cast<F>((rgb >> 16) & 0xff) * (1/255.0f);
-+ *g = cast<F>((rgb >> 8) & 0xff) * (1/255.0f);
-+ *b = cast<F>((rgb >> 0) & 0xff) * (1/255.0f);
-+#else
- *r = cast<F>((rgb >> 0) & 0xff) * (1/255.0f);
- *g = cast<F>((rgb >> 8) & 0xff) * (1/255.0f);
- *b = cast<F>((rgb >> 16) & 0xff) * (1/255.0f);
-+#endif
- }
-
- SI void sample_clut_16(const skcms_A2B* a2b, I32 ix, F* r, F* g, F* b) {
-@@ -549,12 +561,18 @@ SI void sample_clut_16(const skcms_A2B* a2b, I32 ix, F
- // This strategy is much faster for 64-bit builds, and fine for 32-bit x86 too.
- U64 rgb;
- gather_48(a2b->grid_16, ix, &rgb);
-+#if __BIG_ENDIAN__
-+ *r = cast<F>((rgb >> 32) & 0xffff) * (1/65535.0f);
-+ *g = cast<F>((rgb >> 16) & 0xffff) * (1/65535.0f);
-+ *b = cast<F>((rgb >> 0) & 0xffff) * (1/65535.0f);
-+#else
- rgb = swap_endian_16x4(rgb);
-
- *r = cast<F>((rgb >> 0) & 0xffff) * (1/65535.0f);
- *g = cast<F>((rgb >> 16) & 0xffff) * (1/65535.0f);
- *b = cast<F>((rgb >> 32) & 0xffff) * (1/65535.0f);
- #endif
-+#endif
- }
-
- // GCC 7.2.0 hits an internal compiler error with -finline-functions (or -O3)
-@@ -695,10 +713,17 @@ static void exec_ops(const Op* ops, const void** args,
- case Op_load_8888:{
- U32 rgba = load<U32>(src + 4*i);
-
-+#if __BIG_ENDIAN__
-+ r = cast<F>((rgba >> 24) & 0xff) * (1/255.0f);
-+ g = cast<F>((rgba >> 16) & 0xff) * (1/255.0f);
-+ b = cast<F>((rgba >> 8) & 0xff) * (1/255.0f);
-+ a = cast<F>((rgba >> 0) & 0xff) * (1/255.0f);
-+#else
- r = cast<F>((rgba >> 0) & 0xff) * (1/255.0f);
- g = cast<F>((rgba >> 8) & 0xff) * (1/255.0f);
- b = cast<F>((rgba >> 16) & 0xff) * (1/255.0f);
- a = cast<F>((rgba >> 24) & 0xff) * (1/255.0f);
-+#endif
- } break;
-
- case Op_load_8888_palette8:{
-@@ -727,13 +752,29 @@ static void exec_ops(const Op* ops, const void** args,
- const uint16_t* rgb = (const uint16_t*)ptr; // cast to const uint16_t* to be safe.
- #if defined(USING_NEON)
- uint16x4x3_t v = vld3_u16(rgb);
-+#if __BIG_ENDIAN__
-+ r = cast<F>(swap_endian_16((U16)v.val[0])) * (1/65535.0f);
-+ g = cast<F>(swap_endian_16((U16)v.val[1])) * (1/65535.0f);
-+ b = cast<F>(swap_endian_16((U16)v.val[2])) * (1/65535.0f);
-+#else
- r = cast<F>((U16)v.val[0]) * (1/65535.0f);
- g = cast<F>((U16)v.val[1]) * (1/65535.0f);
- b = cast<F>((U16)v.val[2]) * (1/65535.0f);
-+#endif
- #else
-+#if __BIG_ENDIAN__
-+ U32 R = load_3<U32>(rgb+0),
-+ G = load_3<U32>(rgb+1),
-+ B = load_3<U32>(rgb+2);
-+ // R,G,B are little-endian 16-bit, so byte swap them before converting to float.
-+ r = cast<F>((R & 0x00ff)<<8 | (R & 0xff00)>>8) * (1/65535.0f);
-+ g = cast<F>((G & 0x00ff)<<8 | (G & 0xff00)>>8) * (1/65535.0f);
-+ b = cast<F>((B & 0x00ff)<<8 | (B & 0xff00)>>8) * (1/65535.0f);
-+#else
- r = cast<F>(load_3<U32>(rgb+0)) * (1/65535.0f);
- g = cast<F>(load_3<U32>(rgb+1)) * (1/65535.0f);
- b = cast<F>(load_3<U32>(rgb+2)) * (1/65535.0f);
-+#endif
- #endif
- } break;
-
-@@ -743,17 +784,33 @@ static void exec_ops(const Op* ops, const void** args,
- const uint16_t* rgba = (const uint16_t*)ptr; // cast to const uint16_t* to be safe.
- #if defined(USING_NEON)
- uint16x4x4_t v = vld4_u16(rgba);
-+#if __BIG_ENDIAN__
-+ r = cast<F>(swap_endian_16((U16)v.val[0])) * (1/65535.0f);
-+ g = cast<F>(swap_endian_16((U16)v.val[1])) * (1/65535.0f);
-+ b = cast<F>(swap_endian_16((U16)v.val[2])) * (1/65535.0f);
-+ a = cast<F>(swap_endian_16((U16)v.val[3])) * (1/65535.0f);
-+#else
- r = cast<F>((U16)v.val[0]) * (1/65535.0f);
- g = cast<F>((U16)v.val[1]) * (1/65535.0f);
- b = cast<F>((U16)v.val[2]) * (1/65535.0f);
- a = cast<F>((U16)v.val[3]) * (1/65535.0f);
-+#endif
- #else
-+#if __BIG_ENDIAN__
-+ U64 px = swap_endian_16x4(load<U64>(rgba));
-+
-+ r = cast<F>((px >> 48) & 0xffff) * (1/65535.0f);
-+ g = cast<F>((px >> 32) & 0xffff) * (1/65535.0f);
-+ b = cast<F>((px >> 16) & 0xffff) * (1/65535.0f);
-+ a = cast<F>((px >> 0) & 0xffff) * (1/65535.0f);
-+#else
- U64 px = load<U64>(rgba);
-
- r = cast<F>((px >> 0) & 0xffff) * (1/65535.0f);
- g = cast<F>((px >> 16) & 0xffff) * (1/65535.0f);
- b = cast<F>((px >> 32) & 0xffff) * (1/65535.0f);
- a = cast<F>((px >> 48) & 0xffff) * (1/65535.0f);
-+#endif
- #endif
- } break;
-
-@@ -763,10 +820,21 @@ static void exec_ops(const Op* ops, const void** args,
- const uint16_t* rgb = (const uint16_t*)ptr; // cast to const uint16_t* to be safe.
- #if defined(USING_NEON)
- uint16x4x3_t v = vld3_u16(rgb);
-+#if __BIG_ENDIAN__
-+ r = cast<F>((U16)v.val[0]) * (1/65535.0f);
-+ g = cast<F>((U16)v.val[1]) * (1/65535.0f);
-+ b = cast<F>((U16)v.val[2]) * (1/65535.0f);
-+#else
- r = cast<F>(swap_endian_16((U16)v.val[0])) * (1/65535.0f);
- g = cast<F>(swap_endian_16((U16)v.val[1])) * (1/65535.0f);
- b = cast<F>(swap_endian_16((U16)v.val[2])) * (1/65535.0f);
-+#endif
- #else
-+#if __BIG_ENDIAN__
-+ r = cast<F>(load_3<U32>(rgb+0)) * (1/65535.0f);
-+ g = cast<F>(load_3<U32>(rgb+1)) * (1/65535.0f);
-+ b = cast<F>(load_3<U32>(rgb+2)) * (1/65535.0f);
-+#else
- U32 R = load_3<U32>(rgb+0),
- G = load_3<U32>(rgb+1),
- B = load_3<U32>(rgb+2);
-@@ -774,6 +842,7 @@ static void exec_ops(const Op* ops, const void** args,
- r = cast<F>((R & 0x00ff)<<8 | (R & 0xff00)>>8) * (1/65535.0f);
- g = cast<F>((G & 0x00ff)<<8 | (G & 0xff00)>>8) * (1/65535.0f);
- b = cast<F>((B & 0x00ff)<<8 | (B & 0xff00)>>8) * (1/65535.0f);
-+#endif
- #endif
- } break;
-
-@@ -783,17 +852,33 @@ static void exec_ops(const Op* ops, const void** args,
- const uint16_t* rgba = (const uint16_t*)ptr; // cast to const uint16_t* to be safe.
- #if defined(USING_NEON)
- uint16x4x4_t v = vld4_u16(rgba);
-+#if __BIG_ENDIAN__
-+ r = cast<F>((U16)v.val[0]) * (1/65535.0f);
-+ g = cast<F>((U16)v.val[1]) * (1/65535.0f);
-+ b = cast<F>((U16)v.val[2]) * (1/65535.0f);
-+ a = cast<F>((U16)v.val[3]) * (1/65535.0f);
-+#else
- r = cast<F>(swap_endian_16((U16)v.val[0])) * (1/65535.0f);
- g = cast<F>(swap_endian_16((U16)v.val[1])) * (1/65535.0f);
- b = cast<F>(swap_endian_16((U16)v.val[2])) * (1/65535.0f);
- a = cast<F>(swap_endian_16((U16)v.val[3])) * (1/65535.0f);
-+#endif
- #else
-+#if __BIG_ENDIAN__
-+ U64 px = load<U64>(rgba);
-+
-+ r = cast<F>((px >> 48) & 0xffff) * (1/65535.0f);
-+ g = cast<F>((px >> 32) & 0xffff) * (1/65535.0f);
-+ b = cast<F>((px >> 16) & 0xffff) * (1/65535.0f);
-+ a = cast<F>((px >> 0) & 0xffff) * (1/65535.0f);
-+#else
- U64 px = swap_endian_16x4(load<U64>(rgba));
-
- r = cast<F>((px >> 0) & 0xffff) * (1/65535.0f);
- g = cast<F>((px >> 16) & 0xffff) * (1/65535.0f);
- b = cast<F>((px >> 32) & 0xffff) * (1/65535.0f);
- a = cast<F>((px >> 48) & 0xffff) * (1/65535.0f);
-+#endif
- #endif
- } break;
-
-@@ -828,10 +913,17 @@ static void exec_ops(const Op* ops, const void** args,
- A = (U16)v.val[3];
- #else
- U64 px = load<U64>(rgba);
-+#if __BIG_ENDIAN__
-+ U16 R = cast<U16>((px >> 48) & 0xffff),
-+ G = cast<U16>((px >> 32) & 0xffff),
-+ B = cast<U16>((px >> 16) & 0xffff),
-+ A = cast<U16>((px >> 0) & 0xffff);
-+#else
- U16 R = cast<U16>((px >> 0) & 0xffff),
- G = cast<U16>((px >> 16) & 0xffff),
- B = cast<U16>((px >> 32) & 0xffff),
- A = cast<U16>((px >> 48) & 0xffff);
-+#endif
- #endif
- r = F_from_Half(R);
- g = F_from_Half(G);
-@@ -1024,10 +1116,17 @@ static void exec_ops(const Op* ops, const void** args,
- } return;
-
- case Op_store_8888: {
-+#if __BIG_ENDIAN__
-+ store(dst + 4*i, cast<U32>(to_fixed(r * 255) << 24)
-+ | cast<U32>(to_fixed(g * 255) << 16)
-+ | cast<U32>(to_fixed(b * 255) << 8)
-+ | cast<U32>(to_fixed(a * 255) << 0));
-+#else
- store(dst + 4*i, cast<U32>(to_fixed(r * 255) << 0)
- | cast<U32>(to_fixed(g * 255) << 8)
- | cast<U32>(to_fixed(b * 255) << 16)
- | cast<U32>(to_fixed(a * 255) << 24));
-+#endif
- } return;
-
- case Op_store_1010102: {
-@@ -1043,15 +1142,30 @@ static void exec_ops(const Op* ops, const void** args,
- uint16_t* rgb = (uint16_t*)ptr; // for this cast to uint16_t* to be safe.
- #if defined(USING_NEON)
- uint16x4x3_t v = {{
-+#if __BIG_ENDIAN__
-+ (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(r * 65535))),
-+ (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(g * 65535))),
-+ (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(b * 65535))),
-+#else
- (uint16x4_t)cast<U16>(to_fixed(r * 65535)),
- (uint16x4_t)cast<U16>(to_fixed(g * 65535)),
- (uint16x4_t)cast<U16>(to_fixed(b * 65535)),
-+#endif
- }};
- vst3_u16(rgb, v);
- #else
-+#if __BIG_ENDIAN__
-+ I32 R = to_fixed(r * 65535),
-+ G = to_fixed(g * 65535),
-+ B = to_fixed(b * 65535);
-+ store_3(rgb+0, cast<U16>((R & 0x00ff) << 8 | (R & 0xff00) >> 8) );
-+ store_3(rgb+1, cast<U16>((G & 0x00ff) << 8 | (G & 0xff00) >> 8) );
-+ store_3(rgb+2, cast<U16>((B & 0x00ff) << 8 | (B & 0xff00) >> 8) );
-+#else
- store_3(rgb+0, cast<U16>(to_fixed(r * 65535)));
- store_3(rgb+1, cast<U16>(to_fixed(g * 65535)));
- store_3(rgb+2, cast<U16>(to_fixed(b * 65535)));
-+#endif
- #endif
-
- } return;
-@@ -1062,18 +1176,33 @@ static void exec_ops(const Op* ops, const void** args,
- uint16_t* rgba = (uint16_t*)ptr; // for this cast to uint16_t* to be safe.
- #if defined(USING_NEON)
- uint16x4x4_t v = {{
-+#if __BIG_ENDIAN__
-+ (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(r * 65535))),
-+ (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(g * 65535))),
-+ (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(b * 65535))),
-+ (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(a * 65535))),
-+#else
- (uint16x4_t)cast<U16>(to_fixed(r * 65535)),
- (uint16x4_t)cast<U16>(to_fixed(g * 65535)),
- (uint16x4_t)cast<U16>(to_fixed(b * 65535)),
- (uint16x4_t)cast<U16>(to_fixed(a * 65535)),
-+#endif
- }};
- vst4_u16(rgba, v);
- #else
-+#if __BIG_ENDIAN__
-+ U64 px = cast<U64>(to_fixed(r * 65535)) << 48
-+ | cast<U64>(to_fixed(g * 65535)) << 32
-+ | cast<U64>(to_fixed(b * 65535)) << 16
-+ | cast<U64>(to_fixed(a * 65535)) << 0;
-+ store(rgba, swap_endian_16x4(px));
-+#else
- U64 px = cast<U64>(to_fixed(r * 65535)) << 0
- | cast<U64>(to_fixed(g * 65535)) << 16
- | cast<U64>(to_fixed(b * 65535)) << 32
- | cast<U64>(to_fixed(a * 65535)) << 48;
- store(rgba, px);
-+#endif
- #endif
- } return;
-
-@@ -1083,18 +1212,30 @@ static void exec_ops(const Op* ops, const void** args,
- uint16_t* rgb = (uint16_t*)ptr; // for this cast to uint16_t* to be safe.
- #if defined(USING_NEON)
- uint16x4x3_t v = {{
-+#if __BIG_ENDIAN__
-+ (uint16x4_t)cast<U16>(to_fixed(r * 65535)),
-+ (uint16x4_t)cast<U16>(to_fixed(g * 65535)),
-+ (uint16x4_t)cast<U16>(to_fixed(b * 65535)),
-+#else
- (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(r * 65535))),
- (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(g * 65535))),
- (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(b * 65535))),
-+#endif
- }};
- vst3_u16(rgb, v);
- #else
-+#if __BIG_ENDIAN__
-+ store_3(rgb+0, cast<U16>(to_fixed(r * 65535)));
-+ store_3(rgb+1, cast<U16>(to_fixed(g * 65535)));
-+ store_3(rgb+2, cast<U16>(to_fixed(b * 65535)));
-+#else
- I32 R = to_fixed(r * 65535),
- G = to_fixed(g * 65535),
- B = to_fixed(b * 65535);
- store_3(rgb+0, cast<U16>((R & 0x00ff) << 8 | (R & 0xff00) >> 8) );
- store_3(rgb+1, cast<U16>((G & 0x00ff) << 8 | (G & 0xff00) >> 8) );
- store_3(rgb+2, cast<U16>((B & 0x00ff) << 8 | (B & 0xff00) >> 8) );
-+#endif
- #endif
-
- } return;
-@@ -1105,18 +1246,33 @@ static void exec_ops(const Op* ops, const void** args,
- uint16_t* rgba = (uint16_t*)ptr; // for this cast to uint16_t* to be safe.
- #if defined(USING_NEON)
- uint16x4x4_t v = {{
-+#if __BIG_ENDIAN__
-+ (uint16x4_t)cast<U16>(to_fixed(r * 65535)),
-+ (uint16x4_t)cast<U16>(to_fixed(g * 65535)),
-+ (uint16x4_t)cast<U16>(to_fixed(b * 65535)),
-+ (uint16x4_t)cast<U16>(to_fixed(a * 65535)),
-+#else
- (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(r * 65535))),
- (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(g * 65535))),
- (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(b * 65535))),
- (uint16x4_t)swap_endian_16(cast<U16>(to_fixed(a * 65535))),
-+#endif
- }};
- vst4_u16(rgba, v);
- #else
-+#if __BIG_ENDIAN__
-+ U64 px = cast<U64>(to_fixed(r * 65535)) << 48
-+ | cast<U64>(to_fixed(g * 65535)) << 32
-+ | cast<U64>(to_fixed(b * 65535)) << 16
-+ | cast<U64>(to_fixed(a * 65535)) << 0;
-+ store(rgba, px);
-+#else
- U64 px = cast<U64>(to_fixed(r * 65535)) << 0
- | cast<U64>(to_fixed(g * 65535)) << 16
- | cast<U64>(to_fixed(b * 65535)) << 32
- | cast<U64>(to_fixed(a * 65535)) << 48;
- store(rgba, swap_endian_16x4(px));
-+#endif
- #endif
- } return;
-
-@@ -1160,10 +1316,17 @@ static void exec_ops(const Op* ops, const void** args,
- }};
- vst4_u16(rgba, v);
- #else
-+#if __BIG_ENDIAN__
-+ store(rgba, cast<U64>(R) << 48
-+ | cast<U64>(G) << 32
-+ | cast<U64>(B) << 16
-+ | cast<U64>(A) << 0);
-+#else
- store(rgba, cast<U64>(R) << 0
- | cast<U64>(G) << 16
- | cast<U64>(B) << 32
- | cast<U64>(A) << 48);
-+#endif
- #endif
-
- } return;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_common__audio_wav__file.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_common__audio_wav__file.cc
index 2e12a68050c7..556dcba397a2 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_common__audio_wav__file.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_common__audio_wav__file.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/third_party/webrtc/common_audio/wav_file.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/webrtc/common_audio/wav_file.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/webrtc/common_audio/wav_file.cc
-@@ -93,13 +93,15 @@ size_t WavReader::num_samples() const {
+@@ -102,13 +102,15 @@ size_t WavReader::num_samples() const {
}
size_t WavReader::ReadSamples(size_t num_samples, int16_t* samples) {
@@ -19,7 +19,7 @@
// If we didn't read what was requested, ensure we've reached the EOF.
RTC_CHECK(read == num_samples || feof(file_handle_));
RTC_CHECK_LE(read, num_samples_remaining_);
-@@ -178,13 +180,26 @@ size_t WavWriter::num_samples() const {
+@@ -179,11 +181,25 @@ size_t WavWriter::num_samples() const {
void WavWriter::WriteSamples(const int16_t* samples, size_t num_samples) {
#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
@@ -33,17 +33,16 @@
+ isamples[j] = __builtin_bswap16(samples[i + j]);
+ }
+ const size_t written =
-+ fwrite(isamples, sizeof(*isamples), chunk, file_handle_);
++ fwrite(isamples, sizeof(*isamples), chunk, file_handle_);
+ RTC_CHECK_EQ(chunk, written);
+ num_samples_ += written;
+ RTC_CHECK(num_samples_ >= written); // detect size_t overflow
+ }
+#else
- const size_t written =
- fwrite(samples, sizeof(*samples), num_samples, file_handle_);
- RTC_CHECK_EQ(num_samples, written);
- num_samples_ += written;
- RTC_CHECK(num_samples_ >= written); // detect size_t overflow
++
+ RTC_CHECK(file_.Write(samples, sizeof(*samples) * num_samples));
+ num_samples_ += num_samples;
+ RTC_CHECK(num_samples_ >= num_samples); // detect size_t overflow
+#endif
}
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_BUILD.gn
deleted file mode 100644
index e7ab669bdbf0..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/3rdparty/chromium/third_party/webrtc/rtc_base/BUILD.gn.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/third_party/webrtc/rtc_base/BUILD.gn
-@@ -907,8 +907,6 @@ rtc_static_library("rtc_base_generic") {
-
- if (rtc_use_x11) {
- libs += [
-- "dl",
-- "rt",
- "Xext",
- "X11",
- "Xcomposite",
-@@ -916,7 +914,7 @@ rtc_static_library("rtc_base_generic") {
- ]
- }
-
-- if (is_linux) {
-+ if (is_linux && !is_bsd) {
- libs += [
- "dl",
- "rt",
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_byte__order.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_byte__order.h
index eb847e0cf176..cdbc1282d443 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_byte__order.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_byte__order.h
@@ -1,11 +1,11 @@
---- src/3rdparty/chromium/third_party/webrtc/rtc_base/byte_order.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/third_party/webrtc/rtc_base/byte_order.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/webrtc/rtc_base/byte_order.h
-@@ -79,7 +79,7 @@
- #error WEBRTC_ARCH_BIG_ENDIAN or WEBRTC_ARCH_LITTLE_ENDIAN must be defined.
+@@ -89,7 +89,7 @@
#endif // defined(WEBRTC_ARCH_LITTLE_ENDIAN)
+
#elif defined(WEBRTC_POSIX)
-#include <endian.h>
+#include <sys/endian.h>
- #endif
-
- namespace rtc {
+ #else
+ #error "Missing byte order functions for this arch."
+ #endif // defined(WEBRTC_MAC)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_platform__thread__types.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_platform__thread__types.cc
index 104f2df55e97..1c2ae9bd3df0 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_platform__thread__types.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_platform__thread__types.cc
@@ -1,28 +1,27 @@
---- src/3rdparty/chromium/third_party/webrtc/rtc_base/platform_thread_types.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/third_party/webrtc/rtc_base/platform_thread_types.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/third_party/webrtc/rtc_base/platform_thread_types.cc
-@@ -11,7 +11,9 @@
+@@ -11,7 +11,11 @@
#include "rtc_base/platform_thread_types.h"
#if defined(WEBRTC_LINUX)
+#if !defined(__FreeBSD__)
#include <sys/prctl.h>
++#else
++#include <pthread_np.h>
+#endif
#include <sys/syscall.h>
#endif
-@@ -27,8 +29,10 @@ PlatformThreadId CurrentThreadId() {
+@@ -27,6 +31,8 @@ PlatformThreadId CurrentThreadId() {
return gettid();
#elif defined(WEBRTC_FUCHSIA)
return zx_thread_self();
--#elif defined(WEBRTC_LINUX)
-+#elif defined(WEBRTC_LINUX) && !defined(__FreeBSD__)
- return syscall(__NR_gettid);
+#elif defined(__FreeBSD__)
-+ return reinterpret_cast<uint64_t>(pthread_self());
- #else
- // Default implementation for nacl and solaris.
- return reinterpret_cast<pid_t>(pthread_self());
-@@ -55,6 +59,7 @@ bool IsThreadRefEqual(const PlatformThreadRef& a, cons
++ return pthread_getthreadid_np();
+ #elif defined(WEBRTC_LINUX)
+ return syscall(__NR_gettid);
+ #elif defined(__EMSCRIPTEN__)
+@@ -57,6 +63,7 @@ bool IsThreadRefEqual(const PlatformThreadRef& a, cons
}
void SetCurrentThreadName(const char* name) {
@@ -30,7 +29,7 @@
#if defined(WEBRTC_WIN)
struct {
DWORD dwType;
-@@ -72,6 +77,7 @@ void SetCurrentThreadName(const char* name) {
+@@ -74,6 +81,7 @@ void SetCurrentThreadName(const char* name) {
prctl(PR_SET_NAME, reinterpret_cast<unsigned long>(name)); // NOLINT
#elif defined(WEBRTC_MAC) || defined(WEBRTC_IOS)
pthread_setname_np(name);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_string__utils.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_string__utils.h
deleted file mode 100644
index dd063481582c..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_string__utils.h
+++ /dev/null
@@ -1,17 +0,0 @@
---- src/3rdparty/chromium/third_party/webrtc/rtc_base/string_utils.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/third_party/webrtc/rtc_base/string_utils.h
-@@ -25,11 +25,11 @@
- #endif // WEBRTC_WIN
-
- #if defined(WEBRTC_POSIX)
--#ifdef BSD
-+#if defined(WEBRTC_BSD) || defined(BSD)
- #include <stdlib.h>
--#else // BSD
-+#else // WEBRTC_BSD
- #include <alloca.h>
--#endif // !BSD
-+#endif // !WEBRTC_BSD
- #include <strings.h>
- #endif // WEBRTC_POSIX
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_arm__features.c b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_arm__features.c
index 425c8643032e..77f85cadfbb2 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_arm__features.c
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_zlib_arm__features.c
@@ -1,102 +1,31 @@
---- src/3rdparty/chromium/third_party/zlib/arm_features.c.orig 2019-10-21 10:14:54 UTC
+--- src/3rdparty/chromium/third_party/zlib/arm_features.c.orig 2020-03-22 20:03:48 UTC
+++ src/3rdparty/chromium/third_party/zlib/arm_features.c
-@@ -8,83 +8,36 @@
-
- #include "zutil.h"
-
--int ZLIB_INTERNAL arm_cpu_enable_crc32 = 0;
--int ZLIB_INTERNAL arm_cpu_enable_pmull = 0;
--
--#if !defined(_MSC_VER)
- #include <pthread.h>
- #include <stdint.h>
+@@ -27,6 +27,15 @@ int ZLIB_INTERNAL arm_cpu_enable_pmull = 0;
+ #include <zircon/types.h>
+ #elif defined(ARMV8_OS_WINDOWS)
+ #include <windows.h>
++#elif defined(ARMV8_OS_FREEBSD)
+#include <machine/armreg.h>
+#include <sys/types.h>
-
--#if defined(ARMV8_OS_ANDROID)
--#include <cpu-features.h>
--#elif defined(ARMV8_OS_LINUX)
--#include <asm/hwcap.h>
--#include <sys/auxv.h>
--#else
--#error ### No ARM CPU features detection in your platform/OS
--#endif
-+int ZLIB_INTERNAL arm_cpu_enable_crc32 = 0;
-+int ZLIB_INTERNAL arm_cpu_enable_pmull = 0;
-
- static pthread_once_t cpu_check_inited_once = PTHREAD_ONCE_INIT;
-
- static void init_arm_features(void)
- {
-- uint64_t flag_crc32 = 0, flag_pmull = 0, capabilities = 0;
--
--#if defined(ARMV8_OS_ANDROID)
-- flag_crc32 = ANDROID_CPU_ARM_FEATURE_CRC32;
-- flag_pmull = ANDROID_CPU_ARM_FEATURE_PMULL;
-- capabilities = android_getCpuFeatures();
--#elif defined(ARMV8_OS_LINUX)
-- #if defined(__aarch64__)
-- flag_crc32 = HWCAP_CRC32;
-- flag_pmull = HWCAP_PMULL;
-- capabilities = getauxval(AT_HWCAP);
-- #elif defined(__ARM_NEON) || defined(__ARM_NEON__)
-- /* The use of HWCAP2 is for getting features of newer ARMv8-A SoCs
-- * while running in 32bits mode (i.e. aarch32).
-- */
-- flag_crc32 = HWCAP2_CRC32;
-- flag_pmull = HWCAP2_PMULL;
-- capabilities = getauxval(AT_HWCAP2);
-- #endif
-+#if defined (__aarch64__)
+#ifndef ID_AA64ISAR0_AES_VAL
+#define ID_AA64ISAR0_AES_VAL ID_AA64ISAR0_AES
- #endif
++#endif
+#ifndef ID_AA64ISAR0_CRC32_VAL
+#define ID_AA64ISAR0_CRC32_VAL ID_AA64ISAR0_CRC32
+#endif
+ #else
+ #error arm_features.c ARM feature detection in not defined for your platform
+ #endif
+@@ -86,5 +95,12 @@ static void _arm_check_features(void)
+ #elif defined(ARMV8_OS_WINDOWS)
+ arm_cpu_enable_crc32 = IsProcessorFeaturePresent(PF_ARM_V8_CRC32_INSTRUCTIONS_AVAILABLE);
+ arm_cpu_enable_pmull = IsProcessorFeaturePresent(PF_ARM_V8_CRYPTO_INSTRUCTIONS_AVAILABLE);
++#elif defined(ARMV8_OS_FREEBSD)
+ uint64_t id_aa64isar0;
-
-- if (capabilities & flag_crc32)
-- arm_cpu_enable_crc32 = 1;
--
-- if (capabilities & flag_pmull)
+ id_aa64isar0 = READ_SPECIALREG(id_aa64isar0_el1);
+ if (ID_AA64ISAR0_AES_VAL(id_aa64isar0) == ID_AA64ISAR0_AES_PMULL)
- arm_cpu_enable_pmull = 1;
++ arm_cpu_enable_pmull = 1;
+ if (ID_AA64ISAR0_CRC32_VAL(id_aa64isar0) == ID_AA64ISAR0_CRC32_BASE)
+ arm_cpu_enable_crc32 = 1;
-+#endif
- }
-
- void ZLIB_INTERNAL arm_check_features(void)
- {
- pthread_once(&cpu_check_inited_once, init_arm_features);
+ #endif
}
--#else
--#include <windows.h>
--
--static BOOL CALLBACK _arm_check_features(PINIT_ONCE once,
-- PVOID param,
-- PVOID *context);
--static INIT_ONCE cpu_check_inited_once = INIT_ONCE_STATIC_INIT;
--
--
--void ZLIB_INTERNAL arm_check_features(void)
--{
-- InitOnceExecuteOnce(&cpu_check_inited_once, _arm_check_features,
-- NULL, NULL);
--}
--
--static BOOL CALLBACK _arm_check_features(PINIT_ONCE once,
-- PVOID param,
-- PVOID *context)
--{
-- if (IsProcessorFeaturePresent(PF_ARM_V8_CRC32_INSTRUCTIONS_AVAILABLE))
-- arm_cpu_enable_crc32 = 1;
--
-- if (IsProcessorFeaturePresent(PF_ARM_V8_CRYPTO_INSTRUCTIONS_AVAILABLE))
-- arm_cpu_enable_pmull = 1;
--
-- return TRUE;
--}
--#endif /* _MSC_VER */
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_aura_mus_os__exchange__data__provider__mus.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_aura_mus_os__exchange__data__provider__mus.cc
deleted file mode 100644
index 6a4737713394..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_aura_mus_os__exchange__data__provider__mus.cc
+++ /dev/null
@@ -1,24 +0,0 @@
---- src/3rdparty/chromium/ui/aura/mus/os_exchange_data_provider_mus.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/ui/aura/mus/os_exchange_data_provider_mus.cc
-@@ -14,6 +14,7 @@
- #include "base/strings/string_split.h"
- #include "base/strings/string_util.h"
- #include "base/strings/utf_string_conversions.h"
-+#include "base/sys_byteorder.h"
- #include "net/base/filename_util.h"
- #include "ui/base/clipboard/clipboard_constants.h"
- #include "ui/base/clipboard/clipboard_format_type.h"
-@@ -279,8 +280,13 @@ void OSExchangeDataProviderMus::SetHtml(const base::st
- std::vector<unsigned char> bytes;
- // Manually jam a UTF16 BOM into bytes because otherwise, other programs will
- // assume UTF-8.
-+#if defined(ARCH_CPU_LITTLE_ENDIAN)
- bytes.push_back(0xFF);
- bytes.push_back(0xFE);
-+#else
-+ bytes.push_back(0xFE);
-+ bytes.push_back(0xFF);
-+#endif
- AddString16ToVector(html, &bytes);
- mime_data_[ui::kMimeTypeHTML] = bytes;
- }
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_dragdrop_os__exchange__data__provider__factory.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_dragdrop_os__exchange__data__provider__factory.cc
index 5a45e523b7ee..dca08fdf65ca 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_dragdrop_os__exchange__data__provider__factory.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_dragdrop_os__exchange__data__provider__factory.cc
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/ui/base/dragdrop/os_exchange_data_provider_factory.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/ui/base/dragdrop/os_exchange_data_provider_factory.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/ui/base/dragdrop/os_exchange_data_provider_factory.cc
@@ -8,7 +8,7 @@
@@ -9,8 +9,8 @@
#include "ui/base/dragdrop/os_exchange_data_provider_aura.h"
#elif defined(OS_MACOSX)
#include "ui/base/dragdrop/os_exchange_data_provider_builder_mac.h"
-@@ -43,7 +43,7 @@ OSExchangeDataProviderFactory::CreateProvider() {
-
+@@ -24,7 +24,7 @@ std::unique_ptr<OSExchangeData::Provider>
+ OSExchangeDataProviderFactory::CreateProvider() {
#if defined(USE_X11)
return std::make_unique<OSExchangeDataProviderAuraX11>();
-#elif defined(OS_LINUX)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_ime__engine__handler__interface.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_ime__engine__handler__interface.h
deleted file mode 100644
index fc352f9c1ab3..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_ime__engine__handler__interface.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/ui/base/ime/ime_engine_handler_interface.h.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/ui/base/ime/ime_engine_handler_interface.h
-@@ -162,7 +162,7 @@ class UI_BASE_IME_EXPORT IMEEngineHandlerInterface {
- // Hides the input view window (from API call).
- virtual void HideInputView() = 0;
-
--#elif defined(OS_LINUX) || defined(OS_WIN)
-+#elif defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD)
-
- // Get the id of the IME extension.
- virtual std::string GetExtensionId() const = 0;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_input__method__initializer.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_init_input__method__initializer.cc
index aa10124f1f65..929bc5026046 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_input__method__initializer.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ime_init_input__method__initializer.cc
@@ -1,5 +1,5 @@
---- src/3rdparty/chromium/ui/base/ime/input_method_initializer.cc.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/ui/base/ime/input_method_initializer.cc
+--- src/3rdparty/chromium/ui/base/ime/init/input_method_initializer.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/ui/base/ime/init/input_method_initializer.cc
@@ -8,7 +8,7 @@
#if defined(OS_CHROMEOS)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.h
index 943b58d7bc4e..558580f472c9 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_base_ui__base__features.h
@@ -1,14 +1,15 @@
---- src/3rdparty/chromium/ui/base/ui_base_features.h.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/ui/base/ui_base_features.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/ui/base/ui_base_features.h
-@@ -43,9 +43,9 @@ UI_BASE_EXPORT extern const base::Feature kTSFImeSuppo
- UI_BASE_EXPORT bool IsUsingWMPointerForTouch();
- #endif // defined(OS_WIN)
+@@ -59,10 +59,10 @@ COMPONENT_EXPORT(UI_BASE_FEATURES)
+ extern const base::Feature kEnableAutomaticUiAdjustmentsForTouch;
+ #endif // defined(OS_WIN) || defined(OS_CHROMEOS)
-#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
+#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
- UI_BASE_EXPORT extern const base::Feature kDirectManipulationStylus;
+ COMPONENT_EXPORT(UI_BASE_FEATURES)
+ extern const base::Feature kDirectManipulationStylus;
-#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
+#endif // defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
- // Used to have ash (Chrome OS system UI) run in its own process.
- // TODO(jamescook): Make flag only available in Chrome OS.
+ // Used to enable the new controls UI.
+ COMPONENT_EXPORT(UI_BASE_FEATURES)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_font__render__params.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_font__render__params.h
index 7d9c46413c52..d9d29f42ba5b 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_font__render__params.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_font__render__params.h
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/ui/gfx/font_render_params.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/ui/gfx/font_render_params.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/ui/gfx/font_render_params.h
@@ -111,13 +111,13 @@ GFX_EXPORT FontRenderParams GetFontRenderParams(
const FontRenderParamsQuery& query,
@@ -11,8 +11,8 @@
GFX_EXPORT void ClearFontRenderParamsCacheForTest();
#endif
--#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FUCHSIA)
-+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FUCHSIA) || defined(OS_BSD)
+-#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_ANDROID) || \
++#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD) || \
+ defined(OS_FUCHSIA)
// Gets the device scale factor to query the FontRenderParams.
GFX_EXPORT float GetFontRenderParamsDeviceScaleFactor();
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_gpu__memory__buffer.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_gpu__memory__buffer.h
index abdc75a99dba..1f802a65c7f8 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_gpu__memory__buffer.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_gpu__memory__buffer.h
@@ -1,11 +1,11 @@
---- src/3rdparty/chromium/ui/gfx/gpu_memory_buffer.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/ui/gfx/gpu_memory_buffer.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/ui/gfx/gpu_memory_buffer.h
@@ -16,7 +16,7 @@
#include "ui/gfx/geometry/rect.h"
#include "ui/gfx/gfx_export.h"
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
+-#if defined(USE_OZONE) || defined(OS_LINUX)
++#if defined(USE_OZONE) || defined(OS_LINUX) || defined(OS_BSD)
#include "ui/gfx/native_pixmap_handle.h"
#elif defined(OS_MACOSX) && !defined(OS_IOS)
#include "ui/gfx/mac/io_surface.h"
@@ -13,8 +13,8 @@
base::UnsafeSharedMemoryRegion region;
uint32_t offset;
int32_t stride;
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- // TODO(crbug.com/863011): convert this to a scoped handle.
+-#if defined(OS_LINUX) || defined(OS_FUCHSIA)
++#if defined(OS_LINUX) || defined(OS_FUCHSIA) || defined(OS_BSD)
NativePixmapHandle native_pixmap_handle;
#elif defined(OS_MACOSX) && !defined(OS_IOS)
+ ScopedRefCountedIOSurfaceMachPort mach_port;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_ipc_gfx__param__traits__macros.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_ipc_gfx__param__traits__macros.h
index 9960356f09ae..74380c450bc7 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_ipc_gfx__param__traits__macros.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_ipc_gfx__param__traits__macros.h
@@ -1,4 +1,4 @@
---- src/3rdparty/chromium/ui/gfx/ipc/gfx_param_traits_macros.h.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/ui/gfx/ipc/gfx_param_traits_macros.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/ui/gfx/ipc/gfx_param_traits_macros.h
@@ -18,7 +18,7 @@
#include "ui/gfx/selection_bound.h"
@@ -10,20 +10,26 @@
#endif
@@ -51,7 +51,7 @@ IPC_STRUCT_TRAITS_BEGIN(gfx::GpuMemoryBufferHandle)
- IPC_STRUCT_TRAITS_MEMBER(handle)
+ IPC_STRUCT_TRAITS_MEMBER(region)
IPC_STRUCT_TRAITS_MEMBER(offset)
IPC_STRUCT_TRAITS_MEMBER(stride)
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
+-#if defined(OS_LINUX) || defined(OS_FUCHSIA)
++#if defined(OS_LINUX) || defined(OS_FUCHSIA) || defined(OS_BSD)
IPC_STRUCT_TRAITS_MEMBER(native_pixmap_handle)
#elif defined(OS_MACOSX)
IPC_STRUCT_TRAITS_MEMBER(mach_port)
-@@ -66,7 +66,7 @@ IPC_STRUCT_TRAITS_BEGIN(gfx::GpuMemoryBufferId)
+@@ -66,12 +66,12 @@ IPC_STRUCT_TRAITS_BEGIN(gfx::GpuMemoryBufferId)
IPC_STRUCT_TRAITS_MEMBER(id)
IPC_STRUCT_TRAITS_END()
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
+-#if defined(OS_LINUX) || defined(OS_FUCHSIA)
++#if defined(OS_LINUX) || defined(OS_FUCHSIA) || defined(OS_BSD)
IPC_STRUCT_TRAITS_BEGIN(gfx::NativePixmapPlane)
IPC_STRUCT_TRAITS_MEMBER(stride)
IPC_STRUCT_TRAITS_MEMBER(offset)
+ IPC_STRUCT_TRAITS_MEMBER(size)
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ IPC_STRUCT_TRAITS_MEMBER(fd)
+ #elif defined(OS_FUCHSIA)
+ IPC_STRUCT_TRAITS_MEMBER(vmo)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_mojo_buffer__types__struct__traits.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_mojo_buffer__types__struct__traits.cc
index 8a83ff45f59d..02a6078491a9 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_mojo_buffer__types__struct__traits.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_mojo_buffer__types__struct__traits.cc
@@ -1,38 +1,66 @@
---- src/3rdparty/chromium/ui/gfx/mojo/buffer_types_struct_traits.cc.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/ui/gfx/mojo/buffer_types_struct_traits.cc.orig 2020-04-05 18:54:38 UTC
+++ src/3rdparty/chromium/ui/gfx/mojo/buffer_types_struct_traits.cc
-@@ -28,7 +28,7 @@ bool StructTraits<gfx::mojom::BufferUsageAndFormatData
+@@ -24,15 +24,15 @@ bool StructTraits<gfx::mojom::BufferUsageAndFormatData
return data.ReadUsage(&out->usage) && data.ReadFormat(&out->format);
}
+-#if defined(OS_LINUX) || defined(USE_OZONE)
++#if defined(OS_LINUX) || defined(OS_BSD) || defined(USE_OZONE)
+ mojo::ScopedHandle StructTraits<
+ gfx::mojom::NativePixmapPlaneDataView,
+ gfx::NativePixmapPlane>::buffer_handle(gfx::NativePixmapPlane& plane) {
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- std::vector<mojo::ScopedHandle>
- StructTraits<gfx::mojom::NativePixmapHandleDataView, gfx::NativePixmapHandle>::
- fds(const gfx::NativePixmapHandle& pixmap_handle) {
-@@ -55,7 +55,7 @@ bool StructTraits<
- }
- return data.ReadPlanes(&out->planes);
+ return mojo::WrapPlatformFile(plane.fd.release());
+ #elif defined(OS_FUCHSIA)
+ return mojo::WrapPlatformHandle(mojo::PlatformHandle(std::move(plane.vmo)));
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
}
+
+ bool StructTraits<
+@@ -45,7 +45,7 @@ bool StructTraits<
+
+ mojo::PlatformHandle handle =
+ mojo::UnwrapPlatformHandle(data.TakeBufferHandle());
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ if (!handle.is_fd())
+ return false;
+ out->fd = handle.TakeFD();
+@@ -53,7 +53,7 @@ bool StructTraits<
+ if (!handle.is_handle())
+ return false;
+ out->vmo = zx::vmo(handle.TakeHandle());
-#endif // defined(OS_LINUX)
+#endif // defined(OS_LINUX) || defined(OS_BSD)
+ return true;
+ }
+@@ -71,7 +71,7 @@ bool StructTraits<
+ out->modifier = data.modifier();
+ return data.ReadPlanes(&out->planes);
+ }
+-#endif // defined(OS_LINUX) || defined(USE_OZONE)
++#endif // defined(OS_LINUX) || defined(OS_BSD) || defined(USE_OZONE)
+
gfx::mojom::GpuMemoryBufferPlatformHandlePtr StructTraits<
gfx::mojom::GpuMemoryBufferHandleDataView,
-@@ -68,7 +68,7 @@ gfx::mojom::GpuMemoryBufferPlatformHandlePtr StructTra
+@@ -84,7 +84,7 @@ gfx::mojom::GpuMemoryBufferPlatformHandlePtr StructTra
return gfx::mojom::GpuMemoryBufferPlatformHandle::NewSharedMemoryHandle(
std::move(handle.region));
case gfx::NATIVE_PIXMAP:
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
+-#if defined(OS_LINUX) || defined(USE_OZONE)
++#if defined(OS_LINUX) || defined(OS_BSD) || defined(USE_OZONE)
return gfx::mojom::GpuMemoryBufferPlatformHandle::NewNativePixmapHandle(
- handle.native_pixmap_handle);
+ std::move(handle.native_pixmap_handle));
#else
-@@ -144,7 +144,7 @@ bool StructTraits<gfx::mojom::GpuMemoryBufferHandleDat
+@@ -160,7 +160,7 @@ bool StructTraits<gfx::mojom::GpuMemoryBufferHandleDat
out->type = gfx::SHARED_MEMORY_BUFFER;
out->region = std::move(platform_handle->get_shared_memory_handle());
return true;
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
+-#if defined(OS_LINUX) || defined(USE_OZONE)
++#if defined(OS_LINUX) || defined(OS_BSD) || defined(USE_OZONE)
case gfx::mojom::GpuMemoryBufferPlatformHandleDataView::Tag::
NATIVE_PIXMAP_HANDLE:
out->type = gfx::NATIVE_PIXMAP;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_mojo_buffer__types__struct__traits.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_mojo_buffer__types__struct__traits.h
index 0b09d169c31c..b343337a83e9 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_mojo_buffer__types__struct__traits.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_mojo_buffer__types__struct__traits.h
@@ -1,20 +1,20 @@
---- src/3rdparty/chromium/ui/gfx/mojo/buffer_types_struct_traits.h.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/ui/gfx/mojo/buffer_types_struct_traits.h.orig 2020-04-05 18:58:53 UTC
+++ src/3rdparty/chromium/ui/gfx/mojo/buffer_types_struct_traits.h
-@@ -189,7 +189,7 @@ struct StructTraits<gfx::mojom::GpuMemoryBufferIdDataV
+@@ -193,7 +193,7 @@ struct StructTraits<gfx::mojom::GpuMemoryBufferIdDataV
}
};
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
+-#if defined(OS_LINUX) || defined(USE_OZONE)
++#if defined(OS_LINUX) || defined(OS_BSD) || defined(USE_OZONE)
template <>
struct StructTraits<gfx::mojom::NativePixmapPlaneDataView,
gfx::NativePixmapPlane> {
-@@ -229,7 +229,7 @@ struct StructTraits<gfx::mojom::NativePixmapHandleData
+@@ -237,7 +237,7 @@ struct StructTraits<gfx::mojom::NativePixmapHandleData
static bool Read(gfx::mojom::NativePixmapHandleDataView data,
gfx::NativePixmapHandle* out);
};
--#endif // defined(OS_LINUX)
-+#endif // defined(OS_LINUX) || defined(OS_BSD)
+-#endif // defined(OS_LINUX) || defined(USE_OZONE)
++#endif // defined(OS_LINUX) || defined(OS_BSD) || defined(USE_OZONE)
template <>
struct StructTraits<gfx::mojom::GpuMemoryBufferHandleDataView,
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.cc
index 11934f52f105..c216339ecce7 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.cc
@@ -1,11 +1,29 @@
---- src/3rdparty/chromium/ui/gfx/native_pixmap_handle.cc.orig 2019-03-01 17:04:22 UTC
+--- src/3rdparty/chromium/ui/gfx/native_pixmap_handle.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/ui/gfx/native_pixmap_handle.cc
-@@ -38,7 +38,7 @@ NativePixmapHandle::NativePixmapHandle(const NativePix
-
- NativePixmapHandle::~NativePixmapHandle() {}
-
+@@ -33,7 +33,7 @@ NativePixmapPlane::NativePixmapPlane() : stride(0), of
+ NativePixmapPlane::NativePixmapPlane(int stride,
+ int offset,
+ uint64_t size
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
+ ,
+ base::ScopedFD fd
+ #elif defined(OS_FUCHSIA)
+@@ -44,7 +44,7 @@ NativePixmapPlane::NativePixmapPlane(int stride,
+ : stride(stride),
+ offset(offset),
+ size(size)
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ ,
+ fd(std::move(fd))
+ #elif defined(OS_FUCHSIA)
+@@ -72,7 +72,7 @@ NativePixmapHandle& NativePixmapHandle::operator=(Nati
NativePixmapHandle CloneHandleForIPC(const NativePixmapHandle& handle) {
NativePixmapHandle clone;
- std::vector<base::ScopedFD> scoped_fds;
+ for (auto& plane : handle.planes) {
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ DCHECK(plane.fd.is_valid());
+ base::ScopedFD fd_dup(HANDLE_EINTR(dup(plane.fd.get())));
+ if (!fd_dup.is_valid()) {
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.h
index d0b62af6bc67..0242e9115c33 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.h
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_native__pixmap__handle.h
@@ -1,28 +1,29 @@
---- src/3rdparty/chromium/ui/gfx/native_pixmap_handle.h.orig 2019-03-01 17:04:22 UTC
+--- src/3rdparty/chromium/ui/gfx/native_pixmap_handle.h.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/ui/gfx/native_pixmap_handle.h
-@@ -13,7 +13,7 @@
+@@ -15,7 +15,7 @@
#include "build/build_config.h"
#include "ui/gfx/gfx_export.h"
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- #include "base/file_descriptor_posix.h"
+ #include "base/files/scoped_file.h"
#endif
-@@ -54,14 +54,14 @@ struct GFX_EXPORT NativePixmapHandle {
-
- ~NativePixmapHandle();
-
+@@ -32,7 +32,7 @@ struct GFX_EXPORT NativePixmapPlane {
+ NativePixmapPlane(int stride,
+ int offset,
+ uint64_t size
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- // File descriptors for the underlying memory objects (usually dmabufs).
- std::vector<base::FileDescriptor> fds;
- #endif
- std::vector<NativePixmapPlane> planes;
- };
+ ,
+ base::ScopedFD fd
+ #elif defined(OS_FUCHSIA)
+@@ -53,7 +53,7 @@ struct GFX_EXPORT NativePixmapPlane {
+ // This is necessary to map the buffers.
+ uint64_t size;
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- // Returns an instance of |handle| which can be sent over IPC. This duplicates
- // the file-handles, so that the IPC code take ownership of them, without
- // invalidating |handle|.
+ // File descriptor for the underlying memory object (usually dmabuf).
+ base::ScopedFD fd;
+ #elif defined(OS_FUCHSIA)
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__surface__glx.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__surface__glx.cc
new file mode 100644
index 000000000000..e220b22d3ce8
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gl_gl__surface__glx.cc
@@ -0,0 +1,14 @@
+--- src/3rdparty/chromium/ui/gl/gl_surface_glx.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/ui/gl/gl_surface_glx.cc
+@@ -461,7 +461,10 @@ bool GLSurfaceGLX::InitializeOneOff() {
+ return false;
+ }
+
+- const auto& visual_info = gl::GLVisualPickerGLX::GetInstance()->rgba_visual();
++ const auto& visual_info =
++ ui::IsCompositingManagerPresent()
++ ? gl::GLVisualPickerGLX::GetInstance()->rgba_visual()
++ : gl::GLVisualPickerGLX::GetInstance()->system_visual();
+ g_visual = visual_info.visual;
+ g_depth = visual_info.depth;
+ g_colormap =
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_message__center_public_cpp_message__center__constants.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_message__center_public_cpp_message__center__constants.h
new file mode 100644
index 000000000000..fb0a85451b8a
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_message__center_public_cpp_message__center__constants.h
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/ui/message_center/public/cpp/message_center_constants.h.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/ui/message_center/public/cpp/message_center_constants.h
+@@ -105,7 +105,7 @@ const int kButtonHorizontalPadding = 16; // In DIPs.
+ const int kButtonIconTopPadding = 11; // In DIPs.
+ const int kButtonIconToTitlePadding = 16; // In DIPs.
+
+-#if !defined(OS_LINUX) || defined(USE_AURA)
++#if (!defined(OS_LINUX) && !defined(OS_BSD)) || defined(USE_AURA)
+ constexpr SkColor kButtonSeparatorColor = SkColorSetRGB(234, 234, 234);
+ constexpr SkColor kHoveredButtonBackgroundColor = SkColorSetRGB(243, 243, 243);
+ #endif
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_message__center_views_message__popup__view.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_message__center_views_message__popup__view.cc
new file mode 100644
index 000000000000..d531007148d1
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_message__center_views_message__popup__view.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/chromium/ui/message_center/views/message_popup_view.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/ui/message_center/views/message_popup_view.cc
+@@ -106,7 +106,7 @@ void MessagePopupView::AutoCollapse() {
+ void MessagePopupView::Show() {
+ views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP);
+ params.z_order = ui::ZOrderLevel::kFloatingWindow;
+-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
++#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
+ // Make the widget explicitly activatable as TYPE_POPUP is not activatable by
+ // default but we need focus for the inline reply textarea.
+ params.activatable = views::Widget::InitParams::ACTIVATABLE_YES;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_label.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_label.cc
index 44b634ed3436..3a32a78633b7 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_label.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_views_controls_label.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/ui/views/controls/label.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/ui/views/controls/label.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/ui/views/controls/label.cc
-@@ -549,7 +549,7 @@ bool Label::OnMousePressed(const ui::MouseEvent& event
+@@ -651,7 +651,7 @@ bool Label::OnMousePressed(const ui::MouseEvent& event
GetFocusManager()->SetFocusedView(this);
}
@@ -9,12 +9,12 @@
if (event.IsOnlyMiddleMouseButton() && GetFocusManager() && !had_focus)
GetFocusManager()->SetFocusedView(this);
#endif
-@@ -734,7 +734,7 @@ bool Label::PasteSelectionClipboard() {
+@@ -836,7 +836,7 @@ bool Label::PasteSelectionClipboard() {
}
void Label::UpdateSelectionClipboard() {
-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)
- if (!obscured()) {
- ui::ScopedClipboardWriter(ui::CLIPBOARD_TYPE_SELECTION)
++#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
+ if (!GetObscured()) {
+ ui::ScopedClipboardWriter(ui::ClipboardType::kSelection)
.WriteText(GetSelectedText());
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_views_corewm_tooltip__aura.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_views_corewm_tooltip__aura.cc
index ac6f7ec58f6f..d1fb3fde4e08 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_views_corewm_tooltip__aura.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_views_corewm_tooltip__aura.cc
@@ -1,11 +1,11 @@
---- src/3rdparty/chromium/ui/views/corewm/tooltip_aura.cc.orig 2018-11-13 18:25:11 UTC
+--- src/3rdparty/chromium/ui/views/corewm/tooltip_aura.cc.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/ui/views/corewm/tooltip_aura.cc
-@@ -34,7 +34,7 @@ const int kCursorOffsetY = 15;
+@@ -41,7 +41,7 @@ constexpr int kVerticalPaddingBottom = 5;
// TODO(varkha): Update if native widget can be transparent on Linux.
bool CanUseTranslucentTooltipWidget() {
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)
+-#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_WIN)
++#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_WIN) || defined(OS_BSD)
return false;
#else
return true;
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_api.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_api_api.cc
index d0c4a6abede4..9d1b1fd2b650 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_api.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_api_api.cc
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/v8/src/api.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/v8/src/api.cc
-@@ -107,7 +107,7 @@
+--- src/3rdparty/chromium/v8/src/api/api.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/v8/src/api/api.cc
+@@ -110,7 +110,7 @@
#include "src/wasm/wasm-result.h"
#include "src/wasm/wasm-serialization.h"
@@ -9,7 +9,7 @@
#include <signal.h>
#include "include/v8-wasm-trap-handler-posix.h"
#include "src/trap-handler/handler-inside-posix.h"
-@@ -5759,7 +5759,7 @@ bool v8::V8::Initialize() {
+@@ -5550,7 +5550,7 @@ bool v8::V8::Initialize() {
return true;
}
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_arm_cpu-arm.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_arm_cpu-arm.cc
index c486b06c5847..bcf1ee72ea95 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_arm_cpu-arm.cc
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_codegen_arm_cpu-arm.cc
@@ -1,16 +1,16 @@
---- src/3rdparty/chromium/v8/src/arm/cpu-arm.cc.orig 2019-01-16 10:59:47 UTC
-+++ src/3rdparty/chromium/v8/src/arm/cpu-arm.cc
+--- src/3rdparty/chromium/v8/src/codegen/arm/cpu-arm.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/chromium/v8/src/codegen/arm/cpu-arm.cc
@@ -7,6 +7,9 @@
#ifdef __QNXNTO__
#include <sys/mman.h> // for cache flushing.
- #undef MAP_TYPE
+ #undef MAP_TYPE // NOLINT
+#elif defined(__FreeBSD__)
+#include <sys/types.h>
+#include <machine/sysarch.h> // for cache flushing.
#else
#include <sys/syscall.h> // for cache flushing.
#endif
-@@ -24,6 +27,9 @@ void CpuFeatures::FlushICache(void* start, size_t size
+@@ -25,6 +28,9 @@ V8_NOINLINE void CpuFeatures::FlushICache(void* start,
#if !defined(USE_SIMULATOR)
#if V8_OS_QNX
msync(start, size, MS_SYNC | MS_INVALIDATE_ICACHE);
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_external-reference-table.cc b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_external-reference-table.cc
deleted file mode 100644
index e13551050ecc..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_external-reference-table.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/v8/src/external-reference-table.cc.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/v8/src/external-reference-table.cc
-@@ -9,7 +9,7 @@
- #include "src/external-reference.h"
- #include "src/ic/stub-cache.h"
-
--#if defined(DEBUG) && defined(V8_OS_LINUX) && !defined(V8_OS_ANDROID)
-+#if defined(DEBUG) && (defined(V8_OS_LINUX) || defined(V8_OS_FREEBSD)) && !defined(V8_OS_ANDROID)
- #define SYMBOLIZE_FUNCTION
- #include <execinfo.h>
- #include <vector>
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_log-utils.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_log-utils.h
deleted file mode 100644
index aeff5d09a4cd..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_log-utils.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdparty/chromium/v8/src/log-utils.h.orig 2018-11-13 18:25:11 UTC
-+++ src/3rdparty/chromium/v8/src/log-utils.h
-@@ -15,6 +15,8 @@
- #include "src/flags.h"
- #include "src/ostreams.h"
-
-+#include <stdarg.h>
-+
- namespace v8 {
- namespace internal {
-
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_ppc_constants-ppc.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_ppc_constants-ppc.h
deleted file mode 100644
index 93f235f94774..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_ppc_constants-ppc.h
+++ /dev/null
@@ -1,30 +0,0 @@
---- src/3rdparty/chromium/v8/src/ppc/constants-ppc.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/v8/src/ppc/constants-ppc.h
-@@ -21,7 +21,8 @@
- #endif
-
- #if V8_HOST_ARCH_PPC && \
-- (V8_OS_AIX || (V8_TARGET_ARCH_PPC64 && V8_TARGET_BIG_ENDIAN))
-+ (V8_OS_AIX || (V8_TARGET_ARCH_PPC64 && \
-+ (V8_TARGET_BIG_ENDIAN && (!defined(_CALL_ELF) || _CALL_ELF == 1))))
- #define ABI_USES_FUNCTION_DESCRIPTORS 1
- #else
- #define ABI_USES_FUNCTION_DESCRIPTORS 0
-@@ -33,13 +34,15 @@
- #define ABI_PASSES_HANDLES_IN_REGS 0
- #endif
-
--#if !V8_HOST_ARCH_PPC || !V8_TARGET_ARCH_PPC64 || V8_TARGET_LITTLE_ENDIAN
-+#if !V8_HOST_ARCH_PPC || !V8_TARGET_ARCH_PPC64 || \
-+ (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2))
- #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 1
- #else
- #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 0
- #endif
-
--#if !V8_HOST_ARCH_PPC || (V8_TARGET_ARCH_PPC64 && V8_TARGET_LITTLE_ENDIAN)
-+#if !V8_HOST_ARCH_PPC || (V8_TARGET_ARCH_PPC64 && \
-+ (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2)))
- #define ABI_CALL_VIA_IP 1
- #else
- #define ABI_CALL_VIA_IP 0
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_ppc_register-ppc.h b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_ppc_register-ppc.h
deleted file mode 100644
index 79c80771a2e4..000000000000
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_ppc_register-ppc.h
+++ /dev/null
@@ -1,12 +0,0 @@
---- src/3rdparty/chromium/v8/src/ppc/register-ppc.h.orig 2019-05-23 12:39:34 UTC
-+++ src/3rdparty/chromium/v8/src/ppc/register-ppc.h
-@@ -145,7 +145,8 @@ const int kNumSafepointRegisters = 32;
- // The following constants describe the stack frame linkage area as
- // defined by the ABI. Note that kNumRequiredStackFrameSlots must
- // satisfy alignment requirements (rounding up if required).
--#if V8_TARGET_ARCH_PPC64 && V8_TARGET_LITTLE_ENDIAN // ppc64le linux
-+#if V8_TARGET_ARCH_PPC64 && (V8_TARGET_LITTLE_ENDIAN || \
-+ defined(_CALL_ELF) && _CALL_ELF == 2)
- // [0] back chain
- // [1] condition register save area
- // [2] link register save area
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_test_BUILD.gn b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_test_BUILD.gn
index 90e1c4c18f7b..e639351c8780 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_test_BUILD.gn
+++ b/www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_test_BUILD.gn
@@ -1,6 +1,6 @@
---- src/3rdparty/chromium/v8/test/BUILD.gn.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/chromium/v8/test/BUILD.gn.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/chromium/v8/test/BUILD.gn
-@@ -31,7 +31,7 @@ group("gn_all") {
+@@ -32,7 +32,7 @@ group("gn_all") {
deps += [
"cctest:cctest",
"cctest:generate-bytecode-expectations",
@@ -9,26 +9,28 @@
]
}
}
-@@ -80,9 +80,9 @@ group("v8_bot_default") {
+@@ -82,10 +82,10 @@ group("v8_bot_default") {
"mjsunit:v8_mjsunit",
"mkgrokdump:mkgrokdump",
"preparser:v8_preparser",
- "unittests:unittests",
+ #"unittests:unittests",
+ "wasm-api-tests:wasm_api_tests",
"wasm-js:v8_wasm_js",
- "wasm-spec-tests:v8_wasm_spec_tests",
+ #"wasm-spec-tests:v8_wasm_spec_tests",
"webkit:v8_webkit",
]
}
-@@ -100,9 +100,9 @@ group("v8_default") {
+@@ -103,10 +103,10 @@ group("v8_default") {
"mjsunit:v8_mjsunit",
"mkgrokdump:mkgrokdump",
"preparser:v8_preparser",
- "unittests:unittests",
++ #"unittests:unittests",
+ "wasm-api-tests:wasm_api_tests",
- "wasm-js:v8_wasm_js",
- "wasm-spec-tests:v8_wasm_spec_tests",
-+ #"unittests:unittests",
+ #"wasm-js:v8_wasm_js",
+ #"wasm-spec-tests:v8_wasm_spec_tests",
]
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_gn_base_files_file__util__posix.cc b/www/qt5-webengine/files/patch-src_3rdparty_gn_base_files_file__util__posix.cc
new file mode 100644
index 000000000000..c0c9be53b282
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_3rdparty_gn_base_files_file__util__posix.cc
@@ -0,0 +1,11 @@
+--- src/3rdparty/gn/base/files/file_util_posix.cc.orig 2019-11-27 21:12:25 UTC
++++ src/3rdparty/gn/base/files/file_util_posix.cc
+@@ -254,7 +254,7 @@ bool ReplaceFile(const FilePath& from_path,
+ #endif // !defined(OS_NACL_NONSFI)
+
+ bool CreateLocalNonBlockingPipe(int fds[2]) {
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ return pipe2(fds, O_CLOEXEC | O_NONBLOCK) == 0;
+ #else
+ int raw_fds[2];
diff --git a/www/qt5-webengine/files/patch-src_3rdparty_gn_build_gen.py b/www/qt5-webengine/files/patch-src_3rdparty_gn_build_gen.py
index 51d0e61f01a4..4fe9293a7186 100644
--- a/www/qt5-webengine/files/patch-src_3rdparty_gn_build_gen.py
+++ b/www/qt5-webengine/files/patch-src_3rdparty_gn_build_gen.py
@@ -1,15 +1,15 @@
---- src/3rdparty/gn/build/gen.py.orig 2019-05-23 12:39:34 UTC
+--- src/3rdparty/gn/build/gen.py.orig 2019-11-27 21:12:25 UTC
+++ src/3rdparty/gn/build/gen.py
-@@ -44,7 +44,7 @@ class Platform(object):
+@@ -46,7 +46,7 @@ class Platform(object):
@staticmethod
def known_platforms():
-- return ['linux', 'darwin', 'msvc', 'aix', 'fuchsia']
-+ return ['linux', 'darwin', 'msvc', 'aix', 'fuchsia', 'freebsd']
+- return ['linux', 'darwin', 'msvc', 'aix', 'fuchsia', 'openbsd']
++ return ['linux', 'darwin', 'msvc', 'aix', 'fuchsia', 'openbsd', 'freebsd']
def platform(self):
return self._platform
-@@ -67,6 +67,9 @@ class Platform(object):
+@@ -69,6 +69,9 @@ class Platform(object):
def is_aix(self):
return self._platform == 'aix'
@@ -17,9 +17,9 @@
+ return self._platform == 'freebsd'
+
def is_posix(self):
- return self._platform in ['linux', 'freebsd', 'darwin', 'aix']
+ return self._platform in ['linux', 'freebsd', 'darwin', 'aix', 'openbsd']
-@@ -362,6 +365,11 @@ def WriteGNNinja(path, platform, host, options):
+@@ -364,6 +367,11 @@ def WriteGNNinja(path, platform, host, options):
elif platform.is_aix():
cflags_cc.append('-maix64')
ldflags.append('-maix64')
diff --git a/www/qt5-webengine/files/patch-src_core_config_linux.pri b/www/qt5-webengine/files/patch-src_buildtools_config_linux.pri
index 195e429af323..1241bf465d76 100644
--- a/www/qt5-webengine/files/patch-src_core_config_linux.pri
+++ b/www/qt5-webengine/files/patch-src_buildtools_config_linux.pri
@@ -1,6 +1,6 @@
---- src/core/config/linux.pri.orig 2019-01-16 22:42:58 UTC
-+++ src/core/config/linux.pri
-@@ -166,6 +166,11 @@ host_build {
+--- src/buildtools/config/linux.pri.orig 2019-12-03 07:18:02 UTC
++++ src/buildtools/config/linux.pri
+@@ -190,6 +190,11 @@ host_build {
} else {
gn_args += use_alsa=false
}
@@ -11,4 +11,4 @@
+ }
!packagesExist(libpci): gn_args += use_libpci=false
- qtConfig(webengine-system-x11): hasX11Dependencies() {
+ qtConfig(webengine-ozone-x11) {
diff --git a/www/qt5-webengine/files/patch-src_buildtools_config_support.pri b/www/qt5-webengine/files/patch-src_buildtools_config_support.pri
new file mode 100644
index 000000000000..a095ab1330a8
--- /dev/null
+++ b/www/qt5-webengine/files/patch-src_buildtools_config_support.pri
@@ -0,0 +1,10 @@
+--- src/buildtools/config/support.pri.orig 2020-01-09 09:16:12 UTC
++++ src/buildtools/config/support.pri
+@@ -68,6 +68,7 @@ defineReplace(qtwebengine_checkError) {
+
+ linux:!qtwebengine_checkErrorForLinux():return(false)
+ win:!qtwebengine_checkErrorForWindows():return(false)
++ unix:!qtwebengine_checkErrorForLinux():return(false)
+
+ sanitizer: !qtConfig(webengine-sanitizer) {
+ qtwebengine_skipBuild("Chosen sanitizer configuration is not supported for QtWebEngine. Check config.log for details or use -feature-webengine-sanitizer to force build with the chosen sanitizer configuration.")
diff --git a/www/qt5-webengine/files/patch-src_core_configure.json b/www/qt5-webengine/files/patch-src_core_configure.json
index b845b93dd102..914bf413c87f 100644
--- a/www/qt5-webengine/files/patch-src_core_configure.json
+++ b/www/qt5-webengine/files/patch-src_core_configure.json
@@ -1,36 +1,36 @@
---- src/core/configure.json.orig 2019-01-16 22:42:58 UTC
+--- src/core/configure.json.orig 2019-12-03 07:18:02 UTC
+++ src/core/configure.json
-@@ -18,6 +18,7 @@
+@@ -21,6 +21,7 @@
"webengine-printing-and-pdf": "boolean",
"webengine-proprietary-codecs": "boolean",
"webengine-pulseaudio": "boolean",
+ "webengine-sndio": "boolean",
"webengine-spellchecker": "boolean",
"webengine-native-spellchecker": "boolean",
- "webengine-webrtc": "boolean",
-@@ -27,6 +28,7 @@
+ "webengine-extensions": "boolean",
+@@ -31,6 +32,7 @@
"webengine-kerberos": "boolean",
"alsa": { "type": "boolean", "name": "webengine-alsa" },
"pulseaudio": { "type": "boolean", "name": "webengine-pulseaudio" },
-+ "sndio": { "type": "boolean", "name": "webengine-sndio" },
++ "sndio": { "type": "boolean", "name": "webengine-sndio" },
"ffmpeg": { "type": "enum", "name": "webengine-system-ffmpeg", "values": { "system": "yes", "qt": "no" } },
"opus": { "type": "enum", "name": "webengine-system-opus", "values": { "system": "yes", "qt": "no" } },
"webp": { "type": "enum", "name": "webengine-system-libwebp", "values": { "system": "yes", "qt": "no" } },
-@@ -147,6 +149,12 @@
+@@ -68,6 +70,12 @@
+ "sources": [
{ "type": "pkgConfig", "args": "libpulse >= 0.9.10 libpulse-mainloop-glib" }
]
- },
++ },
+ "sndio": {
+ "label": "sndio",
+ "sources": [
+ { "type": "pkgConfig", "args": "libsndio >= 1.5.0 libsndio" }
+ ]
-+ },
- "webengine-icu": {
- "label": "icu >= 53",
- "sources": [
-@@ -507,6 +515,10 @@
- "condition": "libs.pulseaudio",
+ }
+ },
+ "tests" : {
+@@ -136,6 +144,10 @@
+ "condition": "libs.webengine-pulseaudio",
"output": [ "privateFeature" ]
},
+ "webengine-sndio": {
@@ -40,7 +40,7 @@
"webengine-pepper-plugins": {
"label": "Pepper Plugins",
"purpose": "Enables use of Pepper Flash plugins.",
-@@ -743,6 +755,11 @@
+@@ -305,6 +317,11 @@
{
"type": "feature",
"args": "webengine-pulseaudio",
diff --git a/www/qt5-webengine/files/sndio_input.cc b/www/qt5-webengine/files/sndio_input.cc
index 4a00d8ac1083..6c7bc8b8025b 100644
--- a/www/qt5-webengine/files/sndio_input.cc
+++ b/www/qt5-webengine/files/sndio_input.cc
@@ -2,169 +2,200 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "media/audio/sndio/sndio_input.h"
-
-#include <stddef.h>
-
#include "base/bind.h"
#include "base/logging.h"
#include "base/macros.h"
#include "base/message_loop/message_loop.h"
+#include "media/base/audio_timestamp_helper.h"
#include "media/audio/openbsd/audio_manager_openbsd.h"
#include "media/audio/audio_manager.h"
+#include "media/audio/sndio/sndio_input.h"
namespace media {
static const SampleFormat kSampleFormat = kSampleFormatS16;
-void sndio_in_onmove(void *arg, int delta) {
- NOTIMPLEMENTED();
+void SndioAudioInputStream::OnMoveCallback(void *arg, int delta)
+{
SndioAudioInputStream* self = static_cast<SndioAudioInputStream*>(arg);
- self->hw_delay_ = delta - self->params_.GetBytesPerFrame(kSampleFormat);
+ self->hw_delay += delta;
}
-void *sndio_in_threadstart(void *arg) {
- NOTIMPLEMENTED();
+void *SndioAudioInputStream::ThreadEntry(void *arg) {
SndioAudioInputStream* self = static_cast<SndioAudioInputStream*>(arg);
- self->ReadAudio();
+ self->ThreadLoop();
return NULL;
}
-SndioAudioInputStream::SndioAudioInputStream(AudioManagerBase* audio_manager,
- const std::string& device_name,
- const AudioParameters& params)
- : audio_manager_(audio_manager),
- device_name_(device_name),
- params_(params),
- bytes_per_buffer_(params.GetBytesPerBuffer(kSampleFormat)),
- buffer_duration_(base::TimeDelta::FromMicroseconds(
- params.frames_per_buffer() * base::Time::kMicrosecondsPerSecond /
- static_cast<float>(params.sample_rate()))),
- callback_(NULL),
- device_handle_(NULL),
- read_callback_behind_schedule_(false),
- audio_bus_(AudioBus::Create(params)) {
+SndioAudioInputStream::SndioAudioInputStream(AudioManagerBase* manager,
+ const std::string& device_name,
+ const AudioParameters& params)
+ : manager(manager),
+ params(params),
+ audio_bus(AudioBus::Create(params)),
+ state(kClosed) {
}
-SndioAudioInputStream::~SndioAudioInputStream() {}
+SndioAudioInputStream::~SndioAudioInputStream() {
+ if (state != kClosed)
+ Close();
+}
bool SndioAudioInputStream::Open() {
struct sio_par par;
int sig;
- if (device_handle_)
- return false; // Already open.
+ if (state != kClosed)
+ return false;
- if (params_.format() != AudioParameters::AUDIO_PCM_LINEAR &&
- params_.format() != AudioParameters::AUDIO_PCM_LOW_LATENCY) {
+ if (params.format() != AudioParameters::AUDIO_PCM_LINEAR &&
+ params.format() != AudioParameters::AUDIO_PCM_LOW_LATENCY) {
LOG(WARNING) << "Unsupported audio format.";
return false;
}
sio_initpar(&par);
- par.rate = params_.sample_rate();
- par.pchan = params_.channels();
- par.bits = SampleFormatToBytesPerChannel(kSampleFormat);
+ par.rate = params.sample_rate();
+ par.rchan = params.channels();
+ par.bits = SampleFormatToBitsPerChannel(kSampleFormat);
par.bps = par.bits / 8;
par.sig = sig = par.bits != 8 ? 1 : 0;
par.le = SIO_LE_NATIVE;
- par.appbufsz = params_.frames_per_buffer();
- sndio_rec_bufsz_ = par.bufsz;
- sndio_rec_bufsize_ = par.round * par.bps * par.rchan;
+ par.appbufsz = params.frames_per_buffer();
- device_handle_ = sio_open(SIO_DEVANY, SIO_REC, 0);
+ hdl = sio_open(SIO_DEVANY, SIO_REC, 0);
- if (device_handle_ == NULL) {
+ if (hdl == NULL) {
LOG(ERROR) << "Couldn't open audio device.";
return false;
}
- if (!sio_setpar(device_handle_, &par) || !sio_getpar(device_handle_, &par)) {
+ if (!sio_setpar(hdl, &par) || !sio_getpar(hdl, &par)) {
LOG(ERROR) << "Couldn't set audio parameters.";
goto bad_close;
}
- if (par.rate != (unsigned int)params_.sample_rate() ||
- par.pchan != (unsigned int)params_.channels() ||
- par.bits != (unsigned int)SampleFormatToBytesPerChannel(kSampleFormat) ||
+ if (par.rate != (unsigned int)params.sample_rate() ||
+ par.rchan != (unsigned int)params.channels() ||
+ par.bits != (unsigned int)SampleFormatToBitsPerChannel(kSampleFormat) ||
par.sig != (unsigned int)sig ||
(par.bps > 1 && par.le != SIO_LE_NATIVE) ||
(par.bits != par.bps * 8)) {
LOG(ERROR) << "Unsupported audio parameters.";
goto bad_close;
}
- sio_onmove(device_handle_, sndio_in_onmove, this);
-
- audio_buffer_.reset(new uint8_t[bytes_per_buffer_]);
-
+ state = kStopped;
+ buffer = new char[audio_bus->frames() * params.GetBytesPerFrame(kSampleFormat)];
+ sio_onmove(hdl, &OnMoveCallback, this);
return true;
bad_close:
- sio_close(device_handle_);
+ sio_close(hdl);
return false;
}
-void SndioAudioInputStream::Start(AudioInputCallback* callback) {
- DCHECK(!callback_ && callback);
- callback_ = callback;
- StartAgc();
+void SndioAudioInputStream::Start(AudioInputCallback* cb) {
- // We start reading data half |buffer_duration_| later than when the
- // buffer might have got filled, to accommodate some delays in the audio
- // driver. This could also give us a smooth read sequence going forward.
- base::TimeDelta delay = buffer_duration_ + buffer_duration_ / 2;
- next_read_time_ = base::TimeTicks::Now() + delay;
- if (pthread_create(&thread_, NULL, sndio_in_threadstart, this) != 0)
- LOG(ERROR) << "Failed to create real-time thread.";
-}
+ StartAgc();
-void SndioAudioInputStream::ReadAudio() {
- NOTIMPLEMENTED();
+ state = kRunning;
+ hw_delay = 0;
+ callback = cb;
+ sio_start(hdl);
+ if (pthread_create(&thread, NULL, &ThreadEntry, this) != 0) {
+ LOG(ERROR) << "Failed to create real-time thread for recording.";
+ sio_stop(hdl);
+ state = kStopped;
+ }
}
void SndioAudioInputStream::Stop() {
- if (!device_handle_ || !callback_)
- return;
- StopAgc();
+ if (state == kStopped)
+ return;
- pthread_join(thread_, NULL);
- sio_stop(device_handle_);
+ state = kStopWait;
+ pthread_join(thread, NULL);
+ sio_stop(hdl);
+ state = kStopped;
- callback_ = NULL;
+ StopAgc();
}
void SndioAudioInputStream::Close() {
- if (device_handle_) {
- sio_close(device_handle_);
- audio_buffer_.reset();
- device_handle_ = NULL;
- }
- audio_manager_->ReleaseInputStream(this);
+ if (state == kClosed)
+ return;
+
+ if (state == kRunning)
+ Stop();
+
+ state = kClosed;
+ delete [] buffer;
+ sio_close(hdl);
+
+ manager->ReleaseInputStream(this);
}
double SndioAudioInputStream::GetMaxVolume() {
- return static_cast<double>(SIO_MAXVOL);
+ // Not supported
+ return 0.0;
}
void SndioAudioInputStream::SetVolume(double volume) {
- NOTIMPLEMENTED();
+ // Not supported. Do nothing.
}
double SndioAudioInputStream::GetVolume() {
- long current_volume = 0;
- return static_cast<double>(current_volume);
+ // Not supported.
+ return 0.0;
}
bool SndioAudioInputStream::IsMuted() {
+ // Not supported.
return false;
}
void SndioAudioInputStream::SetOutputDeviceForAec(
const std::string& output_device_id) {
-// Not supported. Do nothing.
+ // Not supported.
+}
+
+void SndioAudioInputStream::ThreadLoop(void) {
+ size_t todo, n;
+ char *data;
+ unsigned int nframes;
+ double normalized_volume = 0.0;
+
+ nframes = audio_bus->frames();
+
+ while (state == kRunning && !sio_eof(hdl)) {
+
+ GetAgcVolume(&normalized_volume);
+
+ // read one block
+ todo = nframes * params.GetBytesPerFrame(kSampleFormat);
+ data = buffer;
+ while (todo > 0) {
+ n = sio_read(hdl, data, todo);
+ if (n == 0)
+ return; // unrecoverable I/O error
+ todo -= n;
+ data += n;
+ }
+ hw_delay -= nframes;
+
+ // convert frames count to TimeDelta
+ const base::TimeDelta delay = AudioTimestampHelper::FramesToTime(hw_delay,
+ params.sample_rate());
+
+ // push into bus
+ audio_bus->FromInterleaved(buffer, nframes, SampleFormatToBytesPerChannel(kSampleFormat));
+
+ // invoke callback
+ callback->OnData(audio_bus.get(), base::TimeTicks::Now() - delay, 1.);
+ }
}
} // namespace media
diff --git a/www/qt5-webengine/files/sndio_input.h b/www/qt5-webengine/files/sndio_input.h
index 2f3fca97a3a3..d868e0469db5 100644
--- a/www/qt5-webengine/files/sndio_input.h
+++ b/www/qt5-webengine/files/sndio_input.h
@@ -22,19 +22,7 @@ namespace media {
class AudioManagerBase;
-// call-backs invoked from C libraries, thus requiring C linkage
-extern "C" {
- // Invoked (on the real-time thread) at each sound card clock tick
- void sndio_in_onmove(void *arg, int delta);
- // Invoked (on the real-time thread) whenever the volume changes
- void sndio_in_onvol(void *arg, unsigned int vol);
- // Real-time thread entry point
- void *sndio_in_threadstart(void *arg);
-}
-
-// Provides an input stream for audio capture based on the SNDIO PCM interface.
-// This object is not thread safe and all methods should be invoked in the
-// thread that created the object.
+// Implementation of AudioOutputStream using sndio(7)
class SndioAudioInputStream : public AgcAudioStream<AudioInputStream> {
public:
// Pass this to the constructor if you want to attempt auto-selection
@@ -61,45 +49,39 @@ class SndioAudioInputStream : public AgcAudioStream<AudioInputStream> {
bool IsMuted() override;
void SetOutputDeviceForAec(const std::string& output_device_id) override;
- // C-linkage call-backs are friends to access private data
- friend void sndio_in_onmove(void *arg, int delta);
- friend void sndio_in_onvol(void *arg, unsigned int vol);
- friend void *sndio_in_threadstart(void *arg);
-
private:
- // Logs the error and invokes any registered callbacks.
- void HandleError(const char* method, int error);
-
- // Reads one or more buffers of audio from the device, passes on to the
- // registered callback and schedules the next read.
- void ReadAudio();
-
- // Recovers from any device errors if possible.
- bool Recover(int error);
-
- // Non-refcounted pointer back to the audio manager.
- // The AudioManager indirectly holds on to stream objects, so we don't
- // want circular references. Additionally, stream objects live on the audio
- // thread, which is owned by the audio manager and we don't want to addref
- // the manager from that thread.
- AudioManagerBase* audio_manager_;
- std::string device_name_;
- AudioParameters params_;
- int bytes_per_buffer_;
- base::TimeDelta buffer_duration_; // Length of each recorded buffer.
- AudioInputCallback* callback_; // Valid during a recording session.
- base::TimeTicks next_read_time_; // Scheduled time for next read callback.
- struct sio_hdl* device_handle_; // Handle to the SNDIO PCM recording device.
- std::unique_ptr<uint8_t[]> audio_buffer_; // Buffer used for reading audio data.
- bool read_callback_behind_schedule_;
- std::unique_ptr<AudioBus> audio_bus_;
-
- int hw_delay_;
- int sndio_rec_bufsize_;
- int sndio_rec_bufsz_;
-
- // High priority thread running RealTimeThread()
- pthread_t thread_;
+
+ enum StreamState {
+ kClosed, // Not opened yet
+ kStopped, // Device opened, but not started yet
+ kRunning, // Started, device playing
+ kStopWait // Stopping, waiting for the real-time thread to exit
+ };
+
+ // C-style call-backs
+ static void OnMoveCallback(void *arg, int delta);
+ static void* ThreadEntry(void *arg);
+
+ // Continuously moves data from the device to the consumer
+ void ThreadLoop();
+ // Our creator, the audio manager needs to be notified when we close.
+ AudioManagerBase* manager;
+ // Parameters of the source
+ AudioParameters params;
+ // We store data here for consumer
+ std::unique_ptr<AudioBus> audio_bus;
+ // Call-back that consumes recorded data
+ AudioInputCallback* callback; // Valid during a recording session.
+ // Handle of the audio device
+ struct sio_hdl* hdl;
+ // Current state of the stream
+ enum StreamState state;
+ // High priority thread running ThreadLoop()
+ pthread_t thread;
+ // Number of frames buffered in the hardware
+ int hw_delay;
+ // Temporary buffer where data is stored sndio-compatible format
+ char* buffer;
DISALLOW_COPY_AND_ASSIGN(SndioAudioInputStream);
};
diff --git a/www/qt5-webengine/files/sndio_output.cc b/www/qt5-webengine/files/sndio_output.cc
index e9053d34b8aa..a6719f9aac8d 100644
--- a/www/qt5-webengine/files/sndio_output.cc
+++ b/www/qt5-webengine/files/sndio_output.cc
@@ -13,22 +13,22 @@ namespace media {
static const SampleFormat kSampleFormat = kSampleFormatS16;
-void sndio_onmove(void *arg, int delta) {
+void SndioAudioOutputStream::OnMoveCallback(void *arg, int delta) {
SndioAudioOutputStream* self = static_cast<SndioAudioOutputStream*>(arg);
- self->hw_delay = delta;
+ self->hw_delay -= delta;
}
-void sndio_onvol(void *arg, unsigned int vol) {
+void SndioAudioOutputStream::OnVolCallback(void *arg, unsigned int vol) {
SndioAudioOutputStream* self = static_cast<SndioAudioOutputStream*>(arg);
self->vol = vol;
}
-void *sndio_threadstart(void *arg) {
+void *SndioAudioOutputStream::ThreadEntry(void *arg) {
SndioAudioOutputStream* self = static_cast<SndioAudioOutputStream*>(arg);
- self->RealTimeThread();
+ self->ThreadLoop();
return NULL;
}
@@ -37,7 +37,6 @@ SndioAudioOutputStream::SndioAudioOutputStream(const AudioParameters& params,
: manager(manager),
params(params),
audio_bus(AudioBus::Create(params)),
- bytes_per_frame(params.GetBytesPerFrame(kSampleFormat)),
state(kClosed),
mutex(PTHREAD_MUTEX_INITIALIZER) {
}
@@ -87,8 +86,8 @@ bool SndioAudioOutputStream::Open() {
volpending = 0;
vol = 0;
buffer = new char[audio_bus->frames() * params.GetBytesPerFrame(kSampleFormat)];
- sio_onmove(hdl, sndio_onmove, this);
- sio_onvol(hdl, sndio_onvol, this);
+ sio_onmove(hdl, &OnMoveCallback, this);
+ sio_onvol(hdl, &OnVolCallback, this);
return true;
bad_close:
sio_close(hdl);
@@ -111,7 +110,7 @@ void SndioAudioOutputStream::Start(AudioSourceCallback* callback) {
hw_delay = 0;
source = callback;
sio_start(hdl);
- if (pthread_create(&thread, NULL, sndio_threadstart, this) != 0) {
+ if (pthread_create(&thread, NULL, &ThreadEntry, this) != 0) {
LOG(ERROR) << "Failed to create real-time thread.";
sio_stop(hdl);
state = kStopped;
@@ -140,8 +139,12 @@ void SndioAudioOutputStream::GetVolume(double* v) {
pthread_mutex_unlock(&mutex);
}
-void SndioAudioOutputStream::RealTimeThread(void) {
- int avail, count;
+// This stream is always used with sub second buffer sizes, where it's
+// sufficient to simply always flush upon Start().
+void SndioAudioOutputStream::Flush() {}
+
+void SndioAudioOutputStream::ThreadLoop(void) {
+ int avail, count, result;
while (state == kRunning) {
// Update volume if needed
@@ -153,7 +156,8 @@ void SndioAudioOutputStream::RealTimeThread(void) {
pthread_mutex_unlock(&mutex);
// Get data to play
- const base::TimeDelta delay = AudioTimestampHelper::FramesToTime(hw_delay, params.sample_rate() * 1000);
+ const base::TimeDelta delay = AudioTimestampHelper::FramesToTime(hw_delay,
+ params.sample_rate());
count = source->OnMoreData(delay, base::TimeTicks::Now(), 0, audio_bus.get());
audio_bus->ToInterleaved(count, SampleFormatToBytesPerChannel(kSampleFormat), buffer);
if (count == 0) {
@@ -165,8 +169,8 @@ void SndioAudioOutputStream::RealTimeThread(void) {
// Submit data to the device
avail = count * params.GetBytesPerFrame(kSampleFormat);
- count = sio_write(hdl, buffer, avail);
- if (count == 0) {
+ result = sio_write(hdl, buffer, avail);
+ if (result == 0) {
LOG(WARNING) << "Audio device disconnected.";
break;
}
diff --git a/www/qt5-webengine/files/sndio_output.h b/www/qt5-webengine/files/sndio_output.h
index 4bc644d9a3ff..ead220ca96e7 100644
--- a/www/qt5-webengine/files/sndio_output.h
+++ b/www/qt5-webengine/files/sndio_output.h
@@ -12,22 +12,10 @@
#include "base/time/time.h"
#include "media/audio/audio_io.h"
-
namespace media {
-class AudioParameters;
class AudioManagerBase;
-// call-backs invoked from C libraries, thus requiring C linkage
-extern "C" {
- // Invoked (on the real-time thread) at each sound card clock tick
- void sndio_onmove(void *arg, int delta);
- // Invoked (on the real-time thread) whenever the volume changes
- void sndio_onvol(void *arg, unsigned int vol);
- // Real-time thread entry point
- void *sndio_threadstart(void *arg);
-}
-
// Implementation of AudioOutputStream using sndio(7)
class SndioAudioOutputStream : public AudioOutputStream {
public:
@@ -37,14 +25,14 @@ class SndioAudioOutputStream : public AudioOutputStream {
virtual ~SndioAudioOutputStream();
// Implementation of AudioOutputStream.
- virtual bool Open() override;
- virtual void Close() override;
- virtual void Start(AudioSourceCallback* callback) override;
- virtual void Stop() override;
- virtual void SetVolume(double volume) override;
- virtual void GetVolume(double* volume) override;
+ bool Open() override;
+ void Close() override;
+ void Start(AudioSourceCallback* callback) override;
+ void Stop() override;
+ void SetVolume(double volume) override;
+ void GetVolume(double* volume) override;
+ void Flush() override;
- // C-linkage call-backs are friends to access private data
friend void sndio_onmove(void *arg, int delta);
friend void sndio_onvol(void *arg, unsigned int vol);
friend void *sndio_threadstart(void *arg);
@@ -56,22 +44,28 @@ class SndioAudioOutputStream : public AudioOutputStream {
kRunning, // Started, device playing
kStopWait // Stopping, waiting for the real-time thread to exit
};
- // Continuously moves data from the audio bus to the device
- void RealTimeThread(void);
+
+ // C-style call-backs
+ static void OnMoveCallback(void *arg, int delta);
+ static void OnVolCallback(void *arg, unsigned int vol);
+ static void* ThreadEntry(void *arg);
+
+ // Continuously moves data from the producer to the device
+ void ThreadLoop(void);
+
// Our creator, the audio manager needs to be notified when we close.
AudioManagerBase* manager;
// Parameters of the source
AudioParameters params;
// Source stores data here
std::unique_ptr<AudioBus> audio_bus;
- int bytes_per_frame;
// Call-back that produces data to play
AudioSourceCallback* source;
// Handle of the audio device
struct sio_hdl* hdl;
// Current state of the stream
enum StreamState state;
- // High priority thread running RealTimeThread()
+ // High priority thread running ThreadLoop()
pthread_t thread;
// Protects vol, volpending and hw_delay
pthread_mutex_t mutex;
@@ -79,7 +73,7 @@ class SndioAudioOutputStream : public AudioOutputStream {
int vol;
// Set to 1 if volumes must be refreshed in the realtime thread
int volpending;
- // Number of bytes buffered in the hardware
+ // Number of frames buffered in the hardware
int hw_delay;
// Temporary buffer where data is stored sndio-compatible format
char* buffer;
diff --git a/www/qt5-webengine/pkg-plist b/www/qt5-webengine/pkg-plist
index c8145b4e54e7..d88c0f6a929e 100644
--- a/www/qt5-webengine/pkg-plist
+++ b/www/qt5-webengine/pkg-plist
@@ -42,6 +42,7 @@
%%QT_INCDIR%%/QtWebEngineCore/QWebEngineCallback
%%QT_INCDIR%%/QtWebEngineCore/QWebEngineClientCertificateStore
%%QT_INCDIR%%/QtWebEngineCore/QWebEngineCookieStore
+%%QT_INCDIR%%/QtWebEngineCore/QWebEngineFindTextResult
%%QT_INCDIR%%/QtWebEngineCore/QWebEngineHttpRequest
%%QT_INCDIR%%/QtWebEngineCore/QWebEngineNotification
%%QT_INCDIR%%/QtWebEngineCore/QWebEngineQuotaRequest
@@ -60,6 +61,7 @@
%%QT_INCDIR%%/QtWebEngineCore/qwebenginecallback.h
%%QT_INCDIR%%/QtWebEngineCore/qwebengineclientcertificatestore.h
%%QT_INCDIR%%/QtWebEngineCore/qwebenginecookiestore.h
+%%QT_INCDIR%%/QtWebEngineCore/qwebenginefindtextresult.h
%%QT_INCDIR%%/QtWebEngineCore/qwebenginehttprequest.h
%%QT_INCDIR%%/QtWebEngineCore/qwebenginenotification.h
%%QT_INCDIR%%/QtWebEngineCore/qwebenginequotarequest.h
@@ -76,6 +78,7 @@
%%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/%%FULLVER%%/QtWebEngineWidgets/private/qtwebenginewidgets-config_p.h
%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineCertificateError
%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineClientCertificateSelection
%%QT_INCDIR%%/QtWebEngineWidgets/QWebEngineContextMenuData
@@ -106,6 +109,7 @@
%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginescriptcollection.h
%%QT_INCDIR%%/QtWebEngineWidgets/qwebenginesettings.h
%%QT_INCDIR%%/QtWebEngineWidgets/qwebengineview.h
+%%QT_INCDIR%%/QtWebEngineWidgets/qtwebenginewidgets-config.h
%%QT_CMAKEDIR%%/Qt5Designer/Qt5Designer_QWebEngineViewPlugin.cmake
%%QT_CMAKEDIR%%/Qt5WebEngine/Qt5WebEngineConfig.cmake
%%QT_CMAKEDIR%%/Qt5WebEngine/Qt5WebEngineConfigVersion.cmake