aboutsummaryrefslogtreecommitdiff
path: root/www/chromium/files
diff options
context:
space:
mode:
authorRene Ladan <rene@FreeBSD.org>2018-02-20 18:51:06 +0000
committerRene Ladan <rene@FreeBSD.org>2018-02-20 18:51:06 +0000
commit2312775f8ebc90aa20f4e45bd252816e24314844 (patch)
tree34414a0b8d8a904cd0eb4023b41603862897f7c9 /www/chromium/files
parent63bad0e7ab07737c7bd33d55c8fddaa2d9f2df01 (diff)
downloadports-2312775f8ebc90aa20f4e45bd252816e24314844.tar.gz
ports-2312775f8ebc90aa20f4e45bd252816e24314844.zip
www/chromium: update to 63.0.3239.132
Notes
Notes: svn path=/head/; revision=462416
Diffstat (limited to 'www/chromium/files')
-rw-r--r--www/chromium/files/audio_manager_openbsd.cc4
-rw-r--r--www/chromium/files/audio_manager_openbsd.h1
-rw-r--r--www/chromium/files/extra-patch-clang14
-rw-r--r--www/chromium/files/extra-patch-libc++-new103
-rw-r--r--www/chromium/files/extra-patch-libc++-old105
-rw-r--r--www/chromium/files/patch-BUILD.gn184
-rw-r--r--www/chromium/files/patch-base_BUILD.gn74
-rw-r--r--www/chromium/files/patch-base_posix_unix__domain__socket.cc (renamed from www/chromium/files/patch-base_posix_unix__domain__socket__linux.cc)38
-rw-r--r--www/chromium/files/patch-base_posix_unix__domain__socket__linux__unittest.cc18
-rw-r--r--www/chromium/files/patch-base_posix_unix__domain__socket__unittest.cc12
-rw-r--r--www/chromium/files/patch-base_process_memory.cc15
-rw-r--r--www/chromium/files/patch-base_process_process__handle__freebsd.cc12
-rw-r--r--www/chromium/files/patch-base_process_process__iterator__freebsd.cc15
-rw-r--r--www/chromium/files/patch-base_process_process__metrics.cc11
-rw-r--r--www/chromium/files/patch-base_process_process__metrics.h70
-rw-r--r--www/chromium/files/patch-base_process_process__metrics__freebsd.cc46
-rw-r--r--www/chromium/files/patch-base_process_process__posix.cc74
-rw-r--r--www/chromium/files/patch-base_sys__info__freebsd.cc65
-rw-r--r--www/chromium/files/patch-base_sys__info__posix.cc17
-rw-r--r--www/chromium/files/patch-base_test_BUILD.gn11
-rw-r--r--www/chromium/files/patch-base_test_launcher_test__launcher.cc17
-rw-r--r--www/chromium/files/patch-base_third__party_libevent_BUILD.gn14
-rw-r--r--www/chromium/files/patch-base_trace__event_process__memory__dump.cc10
-rw-r--r--www/chromium/files/patch-breakpad_BUILD.gn11
-rw-r--r--www/chromium/files/patch-breakpad_src_common_simple__string__dictionary.h11
-rw-r--r--www/chromium/files/patch-build_config_BUILDCONFIG.gn83
-rw-r--r--www/chromium/files/patch-build_config_clang_BUILD.gn20
-rw-r--r--www/chromium/files/patch-build_config_compiler_BUILD.gn136
-rw-r--r--www/chromium/files/patch-build_config_crypto.gni8
-rw-r--r--www/chromium/files/patch-build_config_features.gni19
-rw-r--r--www/chromium/files/patch-build_config_linux_gtk2_BUILD.gn11
-rw-r--r--www/chromium/files/patch-build_config_linux_gtk3_BUILD.gn11
-rw-r--r--www/chromium/files/patch-build_config_linux_gtk_BUILD.gn11
-rw-r--r--www/chromium/files/patch-build_config_sanitizers_BUILD.gn20
-rw-r--r--www/chromium/files/patch-build_config_sanitizers_sanitizers.gni13
-rw-r--r--www/chromium/files/patch-build_config_ui.gni32
-rw-r--r--www/chromium/files/patch-build_gn_run_binary.py11
-rw-r--r--www/chromium/files/patch-build_linux_unbundle_freetype.gn136
-rw-r--r--www/chromium/files/patch-build_linux_unbundle_harfbuzz-ng.gn17
-rw-r--r--www/chromium/files/patch-build_linux_unbundle_replace_gn_files.py11
-rw-r--r--www/chromium/files/patch-build_secondary_third__party_nss_BUILD.gn11
-rw-r--r--www/chromium/files/patch-cc_BUILD.gn22
-rw-r--r--www/chromium/files/patch-chrome_BUILD.gn24
-rw-r--r--www/chromium/files/patch-chrome_app_chrome__main__delegate.cc50
-rw-r--r--www/chromium/files/patch-chrome_app_generated__resources.grd14
-rw-r--r--www/chromium/files/patch-chrome_app_mash_embedded_services.cc27
-rw-r--r--www/chromium/files/patch-chrome_app_settings__strings.grdp14
-rw-r--r--www/chromium/files/patch-chrome_browser_BUILD.gn38
-rw-r--r--www/chromium/files/patch-chrome_browser_about__flags.cc45
-rw-r--r--www/chromium/files/patch-chrome_browser_browser__process__impl.cc12
-rw-r--r--www/chromium/files/patch-chrome_browser_browser__resources.grd12
-rw-r--r--www/chromium/files/patch-chrome_browser_chrome__browser__main.cc34
-rw-r--r--www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h8
-rw-r--r--www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc12
-rw-r--r--www/chromium/files/patch-chrome_browser_download_download__prefs.cc26
-rw-r--r--www/chromium/files/patch-chrome_browser_extensions_BUILD.gn25
-rw-r--r--www/chromium/files/patch-chrome_browser_extensions_api_image__writer__private_image__writer__private__api.cc15
-rw-r--r--www/chromium/files/patch-chrome_browser_extensions_api_image_writer_private_removable_storage_provider.cc20
-rw-r--r--www/chromium/files/patch-chrome_browser_extensions_api_messaging_message__service.cc35
-rw-r--r--www/chromium/files/patch-chrome_browser_flag__descriptions.cc25
-rw-r--r--www/chromium/files/patch-chrome_browser_interstitials_chrome__controller__client.cc14
-rw-r--r--www/chromium/files/patch-chrome_browser_net_async__dns__field__trial.cc11
-rw-r--r--www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc6
-rw-r--r--www/chromium/files/patch-chrome_browser_prefs_browser_prefs.cc20
-rw-r--r--www/chromium/files/patch-chrome_browser_profiles_chrome_browser_main_extra_parts_profiles.cc11
-rw-r--r--www/chromium/files/patch-chrome_browser_profiles_profile__impl__io__data.cc11
-rw-r--r--www/chromium/files/patch-chrome_browser_resources_safe__browsing_BUILD.gn11
-rw-r--r--www/chromium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__page.html32
-rw-r--r--www/chromium/files/patch-chrome_browser_sync_chrome__sync__client.cc19
-rw-r--r--www/chromium/files/patch-chrome_browser_task__manager_sampling_task__group.cc34
-rw-r--r--www/chromium/files/patch-chrome_browser_ui_BUILD.gn11
-rw-r--r--www/chromium/files/patch-chrome_browser_ui_libgtkui_BUILD.gn11
-rw-r--r--www/chromium/files/patch-chrome_browser_ui_libgtkui_nav_button_provider_gtk3.h11
-rw-r--r--www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__drag__controller.cc20
-rw-r--r--www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc32
-rw-r--r--www/chromium/files/patch-chrome_browser_ui_webui_options_browser__options__handler.cc45
-rw-r--r--www/chromium/files/patch-chrome_browser_ui_webui_options_browser__options__handler.h11
-rw-r--r--www/chromium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc10
-rw-r--r--www/chromium/files/patch-chrome_common_BUILD.gn11
-rw-r--r--www/chromium/files/patch-chrome_common_chrome__switches.cc11
-rw-r--r--www/chromium/files/patch-chrome_common_chrome__switches.h11
-rw-r--r--www/chromium/files/patch-chrome_common_url__constants.h25
-rw-r--r--www/chromium/files/patch-chrome_test_BUILD.gn174
-rw-r--r--www/chromium/files/patch-chromecast_BUILD.gn11
-rw-r--r--www/chromium/files/patch-chromecast_browser_BUILD.gn11
-rw-r--r--www/chromium/files/patch-chromecast_browser_cast__browser__main__parts.cc38
-rw-r--r--www/chromium/files/patch-chromecast_browser_metrics_BUILD.gn11
-rw-r--r--www/chromium/files/patch-chromecast_crash_BUILD.gn11
-rw-r--r--www/chromium/files/patch-components_BUILD.gn13
-rw-r--r--www/chromium/files/patch-components_autofill_strings.grdp19
-rw-r--r--www/chromium/files/patch-components_crash_content_app_BUILD.gn19
-rw-r--r--www/chromium/files/patch-components_crash_content_browser_BUILD.gn32
-rw-r--r--www/chromium/files/patch-components_feature_engagement_public_event_constants.cc14
-rw-r--r--www/chromium/files/patch-components_feature_engagement_public_event_constants.h20
-rw-r--r--www/chromium/files/patch-components_metrics_BUILD.gn34
-rw-r--r--www/chromium/files/patch-components_network_session_configurator_browser_network_session_configurator.cc11
-rw-r--r--www/chromium/files/patch-components_new_or_sad_tab_strings.grdp24
-rw-r--r--www/chromium/files/patch-components_os__crypt_os__crypt__unittest.cc13
-rw-r--r--www/chromium/files/patch-components_password__manager_core_browser_BUILD.gn20
-rw-r--r--www/chromium/files/patch-components_password__manager_core_browser_password_manager.cc11
-rw-r--r--www/chromium/files/patch-components_password__manager_core_browser_password_store.cc11
-rw-r--r--www/chromium/files/patch-components_plugins_renderer_BUILD.gn17
-rw-r--r--www/chromium/files/patch-components_policy_tools_generate__policy__source.py22
-rw-r--r--www/chromium/files/patch-components_storage__monitor_BUILD.gn10
-rw-r--r--www/chromium/files/patch-components_tracing_child_child__trace__message__filter.cc11
-rw-r--r--www/chromium/files/patch-content_app_BUILD.gn11
-rw-r--r--www/chromium/files/patch-content_app_content__main__runner.cc44
-rw-r--r--www/chromium/files/patch-content_browser_BUILD.gn41
-rw-r--r--www/chromium/files/patch-content_browser_accessibility_browser_accessibility_auralinux.cc11
-rw-r--r--www/chromium/files/patch-content_browser_browser__main__loop.cc65
-rw-r--r--www/chromium/files/patch-content_browser_gpu_gpu__internals__ui.cc15
-rw-r--r--www/chromium/files/patch-content_browser_memory_memory__coordinator__impl.cc16
-rw-r--r--www/chromium/files/patch-content_browser_memory_memory__monitor.cc18
-rw-r--r--www/chromium/files/patch-content_browser_memory_swap_metrics_observer_linux.cc15
-rw-r--r--www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc12
-rw-r--r--www/chromium/files/patch-content_browser_tracing_tracing__controller__impl.cc20
-rw-r--r--www/chromium/files/patch-content_browser_utility__process__host__impl.cc49
-rw-r--r--www/chromium/files/patch-content_common_BUILD.gn38
-rw-r--r--www/chromium/files/patch-content_common_content__switches__internal.cc10
-rw-r--r--www/chromium/files/patch-content_common_sandbox__linux_sandbox__debug__handling__linux.cc29
-rw-r--r--www/chromium/files/patch-content_common_user_agent.cc17
-rw-r--r--www/chromium/files/patch-content_gpu_BUILD.gn10
-rw-r--r--www/chromium/files/patch-content_gpu_gpu__main.cc29
-rw-r--r--www/chromium/files/patch-content_gpu_in__process__gpu__thread.cc11
-rw-r--r--www/chromium/files/patch-content_ppapi_plugin_ppapi_plugin_main.cc11
-rw-r--r--www/chromium/files/patch-content_renderer_render__thread__impl.cc18
-rw-r--r--www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc48
-rw-r--r--www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h10
-rw-r--r--www/chromium/files/patch-content_renderer_renderer_main.cc10
-rw-r--r--www/chromium/files/patch-content_shell_BUILD.gn38
-rw-r--r--www/chromium/files/patch-content_shell_browser_shell__browser__main__parts.cc14
-rw-r--r--www/chromium/files/patch-content_test_BUILD.gn52
-rw-r--r--www/chromium/files/patch-content_test_content_test_suite.cc18
-rw-r--r--www/chromium/files/patch-content_test_suite.cc18
-rw-r--r--www/chromium/files/patch-content_utility_utility_main.cc11
-rw-r--r--www/chromium/files/patch-device_BUILD.gn11
-rw-r--r--www/chromium/files/patch-device_gamepad_BUILD.gn11
-rw-r--r--www/chromium/files/patch-device_geolocation_BUILD.gn11
-rw-r--r--www/chromium/files/patch-device_geolocation_location__arbitrator.cc12
-rw-r--r--www/chromium/files/patch-device_hid_BUILD.gn10
-rw-r--r--www/chromium/files/patch-device_hid_hid__connection__freebsd.cc72
-rw-r--r--www/chromium/files/patch-device_hid_hid__connection__freebsd.h12
-rw-r--r--www/chromium/files/patch-device_hid_hid__device__info__freebsd.cc33
-rw-r--r--www/chromium/files/patch-device_hid_hid__device__info__freebsd.h38
-rw-r--r--www/chromium/files/patch-device_hid_hid__service__freebsd.cc35
-rw-r--r--www/chromium/files/patch-device_hid_hid__service__freebsd.h9
-rw-r--r--www/chromium/files/patch-device_serial_BUILD.gn41
-rw-r--r--www/chromium/files/patch-extensions_browser_api_messaging_message_service.cc20
-rw-r--r--www/chromium/files/patch-extensions_browser_api_networking__private_networking__private_delegate_factory.cc20
-rw-r--r--www/chromium/files/patch-extensions_browser_api_serial_serial__api.cc16
-rw-r--r--www/chromium/files/patch-extensions_common_api__permission_features.json29
-rw-r--r--www/chromium/files/patch-extensions_common_feature_switch.cc14
-rw-r--r--www/chromium/files/patch-extensions_common_features_feature.cc11
-rw-r--r--www/chromium/files/patch-gpu_BUILD.gn22
-rw-r--r--www/chromium/files/patch-gpu_config_gpu__control__list.cc18
-rw-r--r--www/chromium/files/patch-gpu_gles2__conform__support_BUILD.gn11
-rw-r--r--www/chromium/files/patch-gpu_gles2__conform__support_native_BUILD.gn11
-rw-r--r--www/chromium/files/patch-gpu_ipc_client_BUILD.gn19
-rw-r--r--www/chromium/files/patch-gpu_ipc_service_BUILD.gn20
-rw-r--r--www/chromium/files/patch-gpu_ipc_service_gpu__init.cc58
-rw-r--r--www/chromium/files/patch-gpu_tools_compositor__model__bench_BUILD.gn11
-rw-r--r--www/chromium/files/patch-gpu_vulkan_BUILD.gn11
-rw-r--r--www/chromium/files/patch-headless_lib_headless__macros.h18
-rw-r--r--www/chromium/files/patch-media_audio_BUILD.gn17
-rw-r--r--www/chromium/files/patch-media_audio_alsa_audio_manager_alsa.cc (renamed from www/chromium/files/patch-media__audio__alsa__audio_manager_alsa.cc)30
-rw-r--r--www/chromium/files/patch-media_audio_audio__manager.cc16
-rw-r--r--www/chromium/files/patch-media_audio_audio__manager.h8
-rw-r--r--www/chromium/files/patch-media_base_BUILD.gn20
-rw-r--r--www/chromium/files/patch-media_base_audio__latency.cc16
-rw-r--r--www/chromium/files/patch-media_capture_video_video__capture__device__factory.cc28
-rw-r--r--www/chromium/files/patch-media_cast_BUILD.gn29
-rw-r--r--www/chromium/files/patch-media_cdm_ppapi_ppapi__cdm__adapter.gni20
-rw-r--r--www/chromium/files/patch-mojo_BUILD.gn11
-rw-r--r--www/chromium/files/patch-mojo_edk_test_BUILD.gn20
-rw-r--r--www/chromium/files/patch-native__client__sdk_src_BUILD.gn20
-rw-r--r--www/chromium/files/patch-net_BUILD.gn76
-rw-r--r--www/chromium/files/patch-net_base_address__tracker__linux.cc371
-rw-r--r--www/chromium/files/patch-net_base_address__tracker__linux.h28
-rw-r--r--www/chromium/files/patch-net_base_mime__util__unittest.cc11
-rw-r--r--www/chromium/files/patch-net_http_http__auth__gssapi__posix.cc7
-rw-r--r--www/chromium/files/patch-net_proxy_proxy__service.cc10
-rw-r--r--www/chromium/files/patch-net_socket_udp__socket__posix.cc44
-rw-r--r--www/chromium/files/patch-ppapi_tests_extensions_BUILD.gn11
-rw-r--r--www/chromium/files/patch-printing_BUILD.gn20
-rw-r--r--www/chromium/files/patch-remoting_host_remoting_me2me_host.cc58
-rw-r--r--www/chromium/files/patch-sandbox_features.gni12
-rw-r--r--www/chromium/files/patch-sdch_BUILD.gn20
-rw-r--r--www/chromium/files/patch-services_device_battery_BUILD.gn11
-rw-r--r--www/chromium/files/patch-services_ui_gpu_gpu__main.cc11
-rw-r--r--www/chromium/files/patch-services_ui_gpu_gpu__service.cc29
-rw-r--r--www/chromium/files/patch-skia_BUILD.gn38
-rw-r--r--www/chromium/files/patch-third__party_WebKit_Source_core_layout_BUILD.gn11
-rw-r--r--www/chromium/files/patch-third__party_WebKit_Source_platform_BUILD.gn10
-rw-r--r--www/chromium/files/patch-third__party_WebKit_Source_platform_fonts_FontPlatformData.cpp26
-rw-r--r--www/chromium/files/patch-third__party_WebKit_Source_platform_wtf_BUILD.gn21
-rw-r--r--www/chromium/files/patch-third__party_angle_src_gpu_info_util_SystemInfo_x11.cpp8
-rw-r--r--www/chromium/files/patch-third__party_angle_src_tests_BUILD.gn65
-rw-r--r--www/chromium/files/patch-third__party_breakpad_breakpad_src_common_simple_string_dictionary.h11
-rw-r--r--www/chromium/files/patch-third__party_expat_BUILD.gn11
-rw-r--r--www/chromium/files/patch-third__party_ffmpeg_chromium_scripts_generate_gn.py11
-rw-r--r--www/chromium/files/patch-third__party_ffmpeg_ffmpeg__generated.gni11
-rw-r--r--www/chromium/files/patch-third__party_fontconfig_BUILD.gn11
-rw-r--r--www/chromium/files/patch-third__party_fontconfig_fontconfig.gni11
-rw-r--r--www/chromium/files/patch-third__party_glslang_BUILD.gn20
-rw-r--r--www/chromium/files/patch-third__party_libXNVCtrl_NVCtrl.c25
-rw-r--r--www/chromium/files/patch-third__party_libxslt_BUILD.gn11
-rw-r--r--www/chromium/files/patch-third__party_minigbm_BUILD.gn11
-rw-r--r--www/chromium/files/patch-third__party_opus_BUILD.gn11
-rw-r--r--www/chromium/files/patch-third__party_pdfium_BUILD.gn11
-rw-r--r--www/chromium/files/patch-third__party_pdfium_core_fxcrt_fx__system.h12
-rw-r--r--www/chromium/files/patch-third__party_pdfium_fpdfsdk_javascript_JS__Value.cpp8
-rw-r--r--www/chromium/files/patch-third__party_pdfium_fpdfsdk_javascript_PublicMethods.cpp12
-rw-r--r--www/chromium/files/patch-third__party_pdfium_skia_BUILD.gn29
-rw-r--r--www/chromium/files/patch-third__party_pdfium_xfa_fgas_font_cfgas_fontmgr.cpp14
-rw-r--r--www/chromium/files/patch-third__party_skia_src_images_SkJpegEncoder.cpp41
-rw-r--r--www/chromium/files/patch-third__party_skia_src_sksl_SkSLString.h11
-rw-r--r--www/chromium/files/patch-third__party_sqlite_BUILD.gn56
-rw-r--r--www/chromium/files/patch-third__party_swiftshader_third_party_llvm-subzero_lib_Support_Unix_Process.inc11
-rw-r--r--www/chromium/files/patch-third__party_usrsctp_BUILD.gn13
-rw-r--r--www/chromium/files/patch-third__party_webrtc_BUILD.gn8
-rw-r--r--www/chromium/files/patch-third__party_webrtc_modules_audio__device_BUILD.gn17
-rw-r--r--www/chromium/files/patch-third__party_webrtc_modules_video__coding_BUILD.gn29
-rw-r--r--www/chromium/files/patch-third__party_webrtc_p2p_base_port.cc11
-rw-r--r--www/chromium/files/patch-third__party_webrtc_rtc_base_BUILD.gn20
-rw-r--r--www/chromium/files/patch-third__party_webrtc_rtc_base_platform_thread.cc62
-rw-r--r--www/chromium/files/patch-third__party_webrtc_system__wrappers_BUILD.gn25
-rw-r--r--www/chromium/files/patch-third__party_webrtc_system__wrappers_source_timestamp_extrapolator.cc11
-rw-r--r--www/chromium/files/patch-third__party_webrtc_webrtc.gni11
-rw-r--r--www/chromium/files/patch-third__party_widevine_cdm_BUILD.gn29
-rw-r--r--www/chromium/files/patch-third__party_yasm_BUILD.gn16
-rw-r--r--www/chromium/files/patch-tools_battor__agent_BUILD.gn11
-rw-r--r--www/chromium/files/patch-tools_json_schema_compiler_feature_compiler.py10
-rw-r--r--www/chromium/files/patch-tools_json_schema_compiler_model.py11
-rw-r--r--www/chromium/files/patch-tools_perf_chrome__telemetry__build_BUILD.gn8
-rw-r--r--www/chromium/files/patch-tools_variations_fieldtrial__to__struct.py12
-rw-r--r--www/chromium/files/patch-ui_aura_BUILD.gn11
-rw-r--r--www/chromium/files/patch-ui_base_BUILD.gn67
-rw-r--r--www/chromium/files/patch-ui_base_ime_BUILD.gn20
-rw-r--r--www/chromium/files/patch-ui_base_resource_resource__bundle.cc18
-rw-r--r--www/chromium/files/patch-ui_base_ui__features.gni8
-rw-r--r--www/chromium/files/patch-ui_compositor_BUILD.gn11
-rw-r--r--www/chromium/files/patch-ui_gfx_codec_jpeg_codec.cc20
-rw-r--r--www/chromium/files/patch-ui_gfx_font__list.cc12
-rw-r--r--www/chromium/files/patch-ui_gfx_font__render__params.h11
-rw-r--r--www/chromium/files/patch-ui_gfx_mojo_buffer_types_struct_traits.cc18
-rw-r--r--www/chromium/files/patch-ui_gl_BUILD.gn45
-rw-r--r--www/chromium/files/patch-ui_gl_gl_bindings_api_autogen_glx.h10
-rw-r--r--www/chromium/files/patch-ui_gl_gl_bindings_autogen_glx.cc69
-rw-r--r--www/chromium/files/patch-ui_gl_gl_bindings_autogen_glx.h43
-rw-r--r--www/chromium/files/patch-ui_gl_gl_implementation.cc11
-rw-r--r--www/chromium/files/patch-ui_gl_sync__control__vsync__provider.cc14
-rw-r--r--www/chromium/files/patch-ui_gl_sync__control__vsync__provider.h24
-rw-r--r--www/chromium/files/patch-ui_message__center_message__center__style.h11
-rw-r--r--www/chromium/files/patch-ui_message__center_views_message__center__button__bar.cc47
-rw-r--r--www/chromium/files/patch-ui_message__center_views_message__center__button__bar.h11
-rw-r--r--www/chromium/files/patch-ui_resources_ui__resources.grd11
-rw-r--r--www/chromium/files/patch-ui_views_BUILD.gn20
-rw-r--r--www/chromium/files/patch-ui_views_controls_webview_BUILD.gn11
-rw-r--r--www/chromium/files/patch-ui_views_mus_BUILD.gn11
-rw-r--r--www/chromium/files/sndio_input.cc25
260 files changed, 2768 insertions, 3785 deletions
diff --git a/www/chromium/files/audio_manager_openbsd.cc b/www/chromium/files/audio_manager_openbsd.cc
index 08f1c3272bd5..ffcd9eef94fb 100644
--- a/www/chromium/files/audio_manager_openbsd.cc
+++ b/www/chromium/files/audio_manager_openbsd.cc
@@ -46,10 +46,6 @@ bool AudioManagerOpenBSD::HasAudioInputDevices() {
return true;
}
-void AudioManagerOpenBSD::ShowAudioInputSettings() {
- NOTIMPLEMENTED();
-}
-
void AudioManagerOpenBSD::GetAudioInputDeviceNames(
AudioDeviceNames* device_names) {
DCHECK(device_names->empty());
diff --git a/www/chromium/files/audio_manager_openbsd.h b/www/chromium/files/audio_manager_openbsd.h
index cb2bcf046aeb..8c99db966d65 100644
--- a/www/chromium/files/audio_manager_openbsd.h
+++ b/www/chromium/files/audio_manager_openbsd.h
@@ -24,7 +24,6 @@ class MEDIA_EXPORT AudioManagerOpenBSD : public AudioManagerBase {
// Implementation of AudioManager.
bool HasAudioOutputDevices() override;
bool HasAudioInputDevices() override;
- void ShowAudioInputSettings() override;
void GetAudioInputDeviceNames(AudioDeviceNames* device_names) override;
void GetAudioOutputDeviceNames(AudioDeviceNames* device_names) override;
AudioParameters GetInputStreamParameters(
diff --git a/www/chromium/files/extra-patch-clang b/www/chromium/files/extra-patch-clang
index 1d9997e05468..7f469754bb19 100644
--- a/www/chromium/files/extra-patch-clang
+++ b/www/chromium/files/extra-patch-clang
@@ -27,20 +27,6 @@
if (*ptr == kFinalTlsValue)
return; // We've been called enough times.
ASSERT_LT(kFinalTlsValue, *ptr);
---- base/tracked_objects_unittest.cc.orig 2015-08-22 15:01:51.000000000 -0400
-+++ base/tracked_objects_unittest.cc 2015-09-03 09:20:53.370191000 -0400
-@@ -58,9 +58,9 @@
- Births* birth = ThreadData::TallyABirthIfActive(location);
-
- if (ThreadData::status() == ThreadData::DEACTIVATED)
-- EXPECT_EQ(reinterpret_cast<Births*>(NULL), birth);
-+ EXPECT_EQ(static_cast<Births*>(NULL), birth);
- else
-- EXPECT_NE(reinterpret_cast<Births*>(NULL), birth);
-+ EXPECT_NE(static_cast<Births*>(NULL), birth);
- }
-
- // Helper function to verify the most common test expectations.
--- media/audio/audio_output_proxy_unittest.cc 2015-04-15 00:18:55.000000000 +0200
+++ media/audio/audio_output_proxy_unittest.cc 2015-04-18 22:02:38.000000000 +0200
@@ -387,7 +387,7 @@
diff --git a/www/chromium/files/extra-patch-libc++-new b/www/chromium/files/extra-patch-libc++-new
index 0017902a255d..54588e886c3d 100644
--- a/www/chromium/files/extra-patch-libc++-new
+++ b/www/chromium/files/extra-patch-libc++-new
@@ -1,14 +1,6 @@
---- tools/gn/bootstrap/bootstrap.py.orig 2017-09-05 21:05:47.000000000 +0200
-+++ tools/gn/bootstrap/bootstrap.py 2017-09-10 22:43:57.996797000 +0200
-@@ -23,6 +23,7 @@
- import shutil
- import subprocess
- import sys
-+import platform
- import tempfile
-
- BOOTSTRAP_DIR = os.path.dirname(os.path.abspath(__file__))
-@@ -31,9 +32,10 @@
+--- tools/gn/bootstrap/bootstrap.py.orig 2017-12-23 20:11:27.769312000 +0100
++++ tools/gn/bootstrap/bootstrap.py 2017-12-23 20:28:42.756301000 +0100
+@@ -32,9 +32,10 @@
is_win = sys.platform.startswith('win')
is_linux = sys.platform.startswith('linux')
@@ -20,55 +12,23 @@
def check_call(cmd, **kwargs):
logging.debug('Running: %s', ' '.join(cmd))
-@@ -449,6 +451,7 @@
- 'base/metrics/histogram_base.cc',
- 'base/metrics/histogram_functions.cc',
- 'base/metrics/histogram_samples.cc',
-+ 'base/metrics/histogram_snapshot_manager.cc',
- 'base/metrics/metrics_hashes.cc',
- 'base/metrics/persistent_histogram_allocator.cc',
- 'base/metrics/persistent_memory_allocator.cc',
-@@ -534,7 +537,7 @@
- 'base/trace_event/heap_profiler_allocation_context_tracker.cc',
- 'base/trace_event/heap_profiler_allocation_register.cc',
- 'base/trace_event/heap_profiler_event_filter.cc',
-- 'base/trace_event/heap_profiler_event_writer.cc',
-+ 'base/trace_event/heap_profiler_heap_dump_writer.cc',
- 'base/trace_event/heap_profiler_serialization_state.cc',
- 'base/trace_event/heap_profiler_stack_frame_deduplicator.cc',
- 'base/trace_event/heap_profiler_type_name_deduplicator.cc',
-@@ -627,7 +630,7 @@
+@@ -576,7 +577,6 @@
+ 'base/trace_event/trace_log_constants.cc',
+ 'base/trace_event/tracing_agent.cc',
+ 'base/unguessable_token.cc',
+- 'base/value_iterators.cc',
+ 'base/values.cc',
+ 'base/vlog.cc',
+ ])
+@@ -633,6 +633,44 @@
'cflags': cflags + ['-DHAVE_CONFIG_H'],
}
-- if is_linux or is_aix:
-+ if is_linux or is_aix or is_bsd:
- ldflags.extend(['-pthread'])
-
- static_libraries['xdg_user_dirs'] = {
-@@ -642,16 +645,44 @@
- 'base/memory/shared_memory_tracker.cc',
- 'base/nix/xdg_util.cc',
- 'base/process/internal_linux.cc',
-- 'base/process/memory_linux.cc',
-+ #'base/process/memory_linux.cc',
- 'base/process/process_handle_linux.cc',
- 'base/process/process_info_linux.cc',
-- 'base/process/process_iterator_linux.cc',
-- 'base/process/process_linux.cc',
-- 'base/process/process_metrics_linux.cc',
-+ #'base/process/process_iterator_linux.cc',
-+ #'base/process/process_linux.cc',
-+ #'base/process/process_metrics_linux.cc',
- 'base/strings/sys_string_conversions_posix.cc',
-- 'base/sys_info_linux.cc',
-+ #'base/sys_info_linux.cc',
- 'base/threading/platform_thread_linux.cc',
- ])
-+ if is_bsd:
-+ libs.extend(['-lexecinfo', '-lkvm'])
-+ ldflags.extend(['-pthread'])
-+
++ if is_bsd:
++ libs.extend(['-lexecinfo', '-lkvm'])
++ ldflags.extend(['-pthread'])
++ include_dirs += ["/usr/local/include"]
++
+ static_libraries['xdg_user_dirs'] = {
+ 'sources': [
+ 'base/third_party/xdg_user_dirs/xdg_user_dir_lookup.cc',
@@ -76,12 +36,21 @@
+ 'tool': 'cxx',
+ }
+ static_libraries['base']['sources'].extend([
-+ 'base/allocator/allocator_shim.cc',
-+ 'base/allocator/allocator_shim_default_dispatch_to_glibc.cc',
-+ 'base/process/process_handle_' + platform.system().lower() + '.cc',
-+ 'base/process/process_iterator_' + platform.system().lower() + '.cc',
-+ 'base/process/process_metrics_'+ platform.system().lower() + '.cc',
-+ 'base/sys_info_' + platform.system().lower() + '.cc',
++ 'base/memory/shared_memory_handle_posix.cc',
++ 'base/memory/shared_memory_posix.cc',
++ 'base/nix/xdg_util.cc',
++ 'base/process/memory_stubs.cc',
++ 'base/process/process_info_linux.cc',
++ 'base/process/internal_linux.cc',
++ 'base/process/process_handle_freebsd.cc',
++ 'base/process/process_metrics_freebsd.cc',
++ 'base/strings/sys_string_conversions_posix.cc',
++ 'base/sys_info_freebsd.cc',
++ 'base/threading/platform_thread_linux.cc',
++ 'base/synchronization/waitable_event_posix.cc',
++ 'base/time/time_exploded_posix.cc',
++ 'base/time/time_now_posix.cc',
++ 'base/value_iterators.cc',
+ ])
+ static_libraries['libevent']['include_dirs'].extend([
+ os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'freebsd')
@@ -93,10 +62,10 @@
+ # Suppressing warnings
+ cflags.extend(['-Wno-deprecated-register', '-Wno-parentheses-equality'])
+
- if is_linux:
- static_libraries['base']['sources'].extend([
- 'base/allocator/allocator_shim.cc',
-@@ -663,17 +694,6 @@
+ if is_linux or is_aix:
+ ldflags.extend(['-pthread'])
+
+@@ -671,17 +709,6 @@
])
static_libraries['libevent']['sources'].extend([
'base/third_party/libevent/epoll.c',
diff --git a/www/chromium/files/extra-patch-libc++-old b/www/chromium/files/extra-patch-libc++-old
index 368fc37c9cf5..059a566e3be7 100644
--- a/www/chromium/files/extra-patch-libc++-old
+++ b/www/chromium/files/extra-patch-libc++-old
@@ -1,14 +1,6 @@
---- tools/gn/bootstrap/bootstrap.py.orig 2017-09-05 21:05:47.000000000 +0200
-+++ tools/gn/bootstrap/bootstrap.py 2017-09-10 19:20:25.156037000 +0200
-@@ -23,6 +23,7 @@
- import shutil
- import subprocess
- import sys
-+import platform
- import tempfile
-
- BOOTSTRAP_DIR = os.path.dirname(os.path.abspath(__file__))
-@@ -31,9 +32,10 @@
+--- tools/gn/bootstrap/bootstrap.py.orig 2017-12-23 20:11:27.769312000 +0100
++++ tools/gn/bootstrap/bootstrap.py 2017-12-23 20:27:26.501215000 +0100
+@@ -32,9 +32,10 @@
is_win = sys.platform.startswith('win')
is_linux = sys.platform.startswith('linux')
@@ -20,55 +12,23 @@
def check_call(cmd, **kwargs):
logging.debug('Running: %s', ' '.join(cmd))
-@@ -449,6 +451,7 @@
- 'base/metrics/histogram_base.cc',
- 'base/metrics/histogram_functions.cc',
- 'base/metrics/histogram_samples.cc',
-+ 'base/metrics/histogram_snapshot_manager.cc',
- 'base/metrics/metrics_hashes.cc',
- 'base/metrics/persistent_histogram_allocator.cc',
- 'base/metrics/persistent_memory_allocator.cc',
-@@ -534,7 +537,7 @@
- 'base/trace_event/heap_profiler_allocation_context_tracker.cc',
- 'base/trace_event/heap_profiler_allocation_register.cc',
- 'base/trace_event/heap_profiler_event_filter.cc',
-- 'base/trace_event/heap_profiler_event_writer.cc',
-+ 'base/trace_event/heap_profiler_heap_dump_writer.cc',
- 'base/trace_event/heap_profiler_serialization_state.cc',
- 'base/trace_event/heap_profiler_stack_frame_deduplicator.cc',
- 'base/trace_event/heap_profiler_type_name_deduplicator.cc',
-@@ -627,7 +630,7 @@
+@@ -576,7 +577,6 @@
+ 'base/trace_event/trace_log_constants.cc',
+ 'base/trace_event/tracing_agent.cc',
+ 'base/unguessable_token.cc',
+- 'base/value_iterators.cc',
+ 'base/values.cc',
+ 'base/vlog.cc',
+ ])
+@@ -633,6 +633,47 @@
'cflags': cflags + ['-DHAVE_CONFIG_H'],
}
-- if is_linux or is_aix:
-+ if is_linux or is_aix or is_bsd:
- ldflags.extend(['-pthread'])
-
- static_libraries['xdg_user_dirs'] = {
-@@ -642,16 +645,45 @@
- 'base/memory/shared_memory_tracker.cc',
- 'base/nix/xdg_util.cc',
- 'base/process/internal_linux.cc',
-- 'base/process/memory_linux.cc',
-+ #'base/process/memory_linux.cc',
- 'base/process/process_handle_linux.cc',
- 'base/process/process_info_linux.cc',
-- 'base/process/process_iterator_linux.cc',
-- 'base/process/process_linux.cc',
-- 'base/process/process_metrics_linux.cc',
-+ #'base/process/process_iterator_linux.cc',
-+ #'base/process/process_linux.cc',
-+ #'base/process/process_metrics_linux.cc',
- 'base/strings/sys_string_conversions_posix.cc',
-- 'base/sys_info_linux.cc',
-+ #'base/sys_info_linux.cc',
- 'base/threading/platform_thread_linux.cc',
- ])
-+ if is_bsd:
-+ libs.extend(['-lexecinfo', '-lkvm'])
-+ ldflags.extend(['-pthread'])
-+
++ if is_bsd:
++ libs.extend(['-lexecinfo', '-lkvm'])
++ ldflags.extend(['-pthread'])
++ include_dirs += ["/usr/local/include"]
++
+ static_libraries['xdg_user_dirs'] = {
+ 'sources': [
+ 'base/third_party/xdg_user_dirs/xdg_user_dir_lookup.cc',
@@ -76,12 +36,21 @@
+ 'tool': 'cxx',
+ }
+ static_libraries['base']['sources'].extend([
-+ 'base/allocator/allocator_shim.cc',
-+ 'base/allocator/allocator_shim_default_dispatch_to_glibc.cc',
-+ 'base/process/process_handle_' + platform.system().lower() + '.cc',
-+ 'base/process/process_iterator_' + platform.system().lower() + '.cc',
-+ 'base/process/process_metrics_'+ platform.system().lower() + '.cc',
-+ 'base/sys_info_' + platform.system().lower() + '.cc',
++ 'base/memory/shared_memory_handle_posix.cc',
++ 'base/memory/shared_memory_posix.cc',
++ 'base/nix/xdg_util.cc',
++ 'base/process/memory_stubs.cc',
++ 'base/process/process_info_linux.cc',
++ 'base/process/internal_linux.cc',
++ 'base/process/process_handle_freebsd.cc',
++ 'base/process/process_metrics_freebsd.cc',
++ 'base/strings/sys_string_conversions_posix.cc',
++ 'base/sys_info_freebsd.cc',
++ 'base/threading/platform_thread_linux.cc',
++ 'base/synchronization/waitable_event_posix.cc',
++ 'base/time/time_exploded_posix.cc',
++ 'base/time/time_now_posix.cc',
++ 'base/value_iterators.cc',
+ ])
+ static_libraries['libevent']['include_dirs'].extend([
+ os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'freebsd')
@@ -92,12 +61,14 @@
+
+ # Suppressing warnings
+ cflags.extend(['-Wno-deprecated-register', '-Wno-parentheses-equality'])
++
++ # Work around base r261801
+ cflags_cc.extend(['-D_LIBCPP_TRIVIAL_PAIR_COPY_CTOR=1'])
+
- if is_linux:
- static_libraries['base']['sources'].extend([
- 'base/allocator/allocator_shim.cc',
-@@ -663,17 +695,6 @@
+ if is_linux or is_aix:
+ ldflags.extend(['-pthread'])
+
+@@ -671,17 +712,6 @@
])
static_libraries['libevent']['sources'].extend([
'base/third_party/libevent/epoll.c',
diff --git a/www/chromium/files/patch-BUILD.gn b/www/chromium/files/patch-BUILD.gn
index 96f64dec2d9e..8e1e30e6dfa8 100644
--- a/www/chromium/files/patch-BUILD.gn
+++ b/www/chromium/files/patch-BUILD.gn
@@ -1,162 +1,96 @@
---- BUILD.gn.orig 2017-07-25 21:04:48.000000000 +0200
-+++ BUILD.gn 2017-07-29 00:52:25.378843000 +0200
-@@ -92,7 +92,7 @@
+--- BUILD.gn.orig 2017-12-15 02:04:03.000000000 +0100
++++ BUILD.gn 2017-12-25 04:12:31.425198000 +0100
+@@ -99,7 +99,7 @@
]
}
- if (!is_ios && !is_android && !is_chromecast && !is_fuchsia) {
-+ if (!is_ios && !is_android && !is_bsd && !is_chromecast && !is_fuchsia) {
++ if (!is_ios && !is_android && !is_chromecast && !is_fuchsia && !is_bsd) {
deps += [
"//chrome",
- "//chrome/test:browser_tests",
-@@ -151,7 +151,7 @@
- ]
- }
-
-- if (!is_ios && !is_fuchsia) {
-+ if (!is_ios && !is_bsd && !is_fuchsia) {
- deps += [
- "//cc:cc_unittests",
- "//chrome/test:telemetry_perf_unittests",
-@@ -363,7 +363,7 @@
- ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- # The following are definitely linux-only.
- deps += [
- "//chrome:manpage",
-@@ -386,9 +386,16 @@
- # TODO(dpranke): add the linux_dump_symbols flag?
- deps += [ "//chrome:linux_symbols" ]
+ "//chrome/installer/zucchini:zucchini",
+@@ -368,7 +368,7 @@
}
-+
-+ if (is_bsd) {
-+ deps -= [
-+ "//sandbox/linux:chrome_sandbox",
-+ "//sandbox/linux:sandbox_linux_unittests",
-+ ]
-+ }
}
-- if (is_ios || is_win || (is_linux && !is_chromeos)) {
-+ if (is_ios || is_win || is_bsd || (is_linux && !is_chromeos)) {
+- if (is_linux || is_android) {
++ if ((is_linux && !is_bsd) || is_android) {
deps += [
- "//base:base_i18n_perftests",
- "//base:base_perftests",
-@@ -459,7 +466,7 @@
- if (enable_nacl) {
- deps += [ "//components/nacl/loader:nacl_loader_unittests" ]
+ "//third_party/breakpad:breakpad_unittests",
+ "//third_party/breakpad:core-2-minidump",
+@@ -408,8 +408,6 @@
+ "//net:disk_cache_memory_test",
+ "//net:quic_client",
+ "//net:quic_server",
+- "//sandbox/linux:chrome_sandbox",
+- "//sandbox/linux:sandbox_linux_unittests",
+ ]
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- # TODO(dpranke): Figure out what platforms should actually have this.
- deps += [ "//components/nacl/loader:nacl_helper" ]
+ if (use_dbus) {
+@@ -465,10 +463,6 @@
+ "//chrome/test/chromedriver:chromedriver",
+ "//chrome/test/chromedriver:chromedriver_tests",
+ "//components/sync:run_sync_testserver",
+- "//courgette:courgette",
+- "//courgette:courgette_fuzz",
+- "//courgette:courgette_minimal_tool",
+- "//courgette:courgette_unittests",
+ "//media/cast:generate_barcode_video",
+ "//media/cast:generate_timecode_audio",
+ "//net:crash_cache",
+@@ -523,10 +517,6 @@
+ "//mojo/edk/test:mojo_public_system_perftests",
+ "//services/service_manager/public/cpp",
+ "//testing/gmock:gmock_main",
+- "//third_party/breakpad:dump_syms($host_toolchain)",
+- "//third_party/breakpad:microdump_stackwalk($host_toolchain)",
+- "//third_party/breakpad:minidump_dump($host_toolchain)",
+- "//third_party/breakpad:minidump_stackwalk($host_toolchain)",
+ ]
-@@ -557,7 +564,7 @@
+ if (!is_android) {
+@@ -594,7 +584,7 @@
deps +=
[ "//chrome/installer/mini_installer:next_version_mini_installer" ]
}
- } else if (!is_android && !is_ios && !is_fuchsia) {
-+ } else if (!is_android && !is_ios && !is_bsd && !is_fuchsia) {
- deps += [ "//breakpad:symupload($host_toolchain)" ]
- }
-
-@@ -588,7 +595,7 @@
- deps += [ "//components/proximity_auth:proximity_auth_unittests" ]
- }
-
-- if (is_win || is_linux) {
-+ if (is_win || is_linux || is_bsd) {
- deps += [
- "//mash:all",
- "//media/mojo/services:media_service_unittests",
-@@ -606,7 +613,7 @@
- }
- }
-
-- if (is_linux && !is_chromeos && !is_chromecast) {
-+ if ((is_linux || is_bsd) && !is_chromeos && !is_chromecast) {
- # TODO(GYP): Figure out if any of these should be in gn_all
- # and figure out how cross-platform they are
- deps += [
-@@ -644,7 +651,7 @@
- }
-
- if (target_cpu == "x86" || target_cpu == "x64") {
-- if (!is_android) {
-+ if (!is_android && !is_bsd) {
- deps += [ "//chrome/test:load_library_perf_tests" ]
- }
- deps += [
-@@ -652,13 +659,13 @@
- "//third_party/libjpeg_turbo:simd_asm",
- ]
- }
-- if (is_linux && current_toolchain == host_toolchain) {
-+ if ((is_linux || is_bsd) && current_toolchain == host_toolchain) {
- deps += [ "//v8:v8_shell" ]
- }
++ } else if (!is_android && !is_ios && !is_fuchsia && !is_bsd) {
+ deps += [ "//third_party/breakpad:symupload($host_toolchain)" ]
}
- if ((is_linux && !is_chromeos && !is_chromecast) || (is_win && use_drfuzz) ||
-- (use_libfuzzer && is_mac)) {
-+ (use_libfuzzer && is_mac) || is_bsd) {
- deps += [
- "//testing/libfuzzer/fuzzers",
- "//testing/libfuzzer/tests:libfuzzer_tests",
-@@ -677,7 +684,7 @@
- deps += [ "//native_client_sdk/src:nacl_core_sdk" ]
- }
+@@ -831,7 +821,6 @@
+ "//ppapi/examples/video_decode",
+ "//sandbox/linux:chrome_sandbox",
+ "//sandbox/linux:sandbox_linux_unittests",
+- "//third_party/breakpad:minidump_stackwalk($host_toolchain)",
-- if (is_linux && use_ozone) {
-+ if ((is_linux || is_bsd ) && use_ozone) {
- deps += [
- "//headless",
- "//headless:headless_tests",
-@@ -811,7 +818,7 @@
- }
- }
-
--if (!is_ios && !is_fuchsia) {
-+if (!is_ios && !is_bsd && !is_fuchsia) {
- # This group includes all of the targets needed to build and test Blink,
- # including running the layout tests (see below).
- group("blink_tests") {
-@@ -879,7 +886,7 @@
+ # Blocked on https://github.com/catapult-project/catapult/issues/2297
+ #"//third_party/catapult/telemetry:bitmaptools",
+@@ -939,7 +928,7 @@
data_deps += [ "//content/shell:content_shell_crash_service" ]
}
- if (!is_win && !is_android) {
+ if (!is_win && !is_android && !is_bsd) {
- data_deps += [ "//breakpad:minidump_stackwalk($host_toolchain)" ]
+ data_deps +=
+ [ "//third_party/breakpad:minidump_stackwalk($host_toolchain)" ]
}
-
-@@ -887,7 +894,7 @@
- data_deps += [ "//breakpad:dump_syms($host_toolchain)" ]
+@@ -948,7 +937,7 @@
+ data_deps += [ "//third_party/breakpad:dump_syms($host_toolchain)" ]
}
- if (is_linux) {
+ if (is_linux && !is_bsd) {
- data_deps += [ "//breakpad:dump_syms($host_toolchain)" ]
+ data_deps += [ "//third_party/breakpad:dump_syms($host_toolchain)" ]
}
-@@ -941,7 +948,7 @@
- group("chromium_builder_perf") {
- testonly = true
-
-- if (!is_ios && !is_android && !is_chromecast && !is_fuchsia) {
-+ if (!is_ios && !is_android && !is_bsd && !is_chromecast && !is_fuchsia) {
- data_deps = [
- "//cc:cc_perftests",
- "//chrome/test:load_library_perf_tests",
-@@ -975,7 +982,7 @@
+@@ -1066,9 +1055,6 @@
"//chrome/installer/mini_installer:mini_installer",
"//chrome/test:angle_perftests",
]
- } else {
-+ } else if (!is_bsd) {
- data_deps += [ "//breakpad:minidump_stackwalk($host_toolchain)" ]
+- data_deps +=
+- [ "//third_party/breakpad:minidump_stackwalk($host_toolchain)" ]
}
}
+ }
diff --git a/www/chromium/files/patch-base_BUILD.gn b/www/chromium/files/patch-base_BUILD.gn
index caa33b9ee389..725a7d08b332 100644
--- a/www/chromium/files/patch-base_BUILD.gn
+++ b/www/chromium/files/patch-base_BUILD.gn
@@ -1,15 +1,6 @@
---- base/BUILD.gn.orig 2017-07-25 21:04:48.000000000 +0200
-+++ base/BUILD.gn 2017-08-02 22:12:25.442369000 +0200
-@@ -1106,7 +1106,7 @@
- "base_paths_win.h",
- ]
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [ "base_paths_posix.cc" ]
- }
- }
-@@ -1142,7 +1142,7 @@
+--- base/BUILD.gn.orig 2017-12-15 02:04:05.000000000 +0100
++++ base/BUILD.gn 2017-12-30 01:18:00.438461000 +0100
+@@ -1125,7 +1125,7 @@
# Needed for <atomic> if using newer C++ library than sysroot, except if
# building inside the cros_sdk environment - use host_toolchain as a
# more robust check for this.
@@ -18,31 +9,44 @@
host_toolchain != "//build/toolchain/cros:host") {
libs = [ "atomic" ]
}
-@@ -1168,7 +1168,7 @@
+@@ -1151,7 +1151,7 @@
"allocator/allocator_shim_override_glibc_weak_symbols.h",
]
deps += [ "//base/allocator:tcmalloc" ]
- } else if (is_linux && use_allocator == "none") {
-+ } else if (is_linux && !is_bsd && use_allocator == "none") {
++ } else if ((is_linux && !is_bsd) && use_allocator == "none") {
sources += [ "allocator/allocator_shim_default_dispatch_to_glibc.cc" ]
} else if (is_android && use_allocator == "none") {
sources += [
-@@ -1185,6 +1185,31 @@
+@@ -1539,7 +1539,7 @@
+ "//base/third_party/xdg_user_dirs",
+ ]
+ } else {
+- # Non-Linux.
++ # Non-Linux/BSD.
+ sources -= [
+ "nix/mime_util_xdg.cc",
+ "nix/mime_util_xdg.h",
+@@ -1555,6 +1555,33 @@
}
}
+ if (is_bsd) {
+ sources -= [
-+ "files/file_util_linux.cc",
+ "files/file_path_watcher_linux.cc",
++ "files/file_util_linux.cc",
++ "process/memory_linux.cc",
+ "process/process_linux.cc",
++ "process/process_handle_linux.cc",
+ "process/process_iterator_linux.cc",
+ "process/process_metrics_linux.cc",
-+ "process/process_handle_linux.cc",
-+ "sys_info_linux.cc",
++ "sys_info_linux.cc"
+ ]
+ sources += [
++ "files/file_path_watcher_kqueue.cc",
++ "files/file_path_watcher_kqueue.h",
+ "files/file_path_watcher_stub.cc",
++ "process/memory_stubs.cc",
+ "process/process_handle_freebsd.cc",
+ "process/process_iterator_freebsd.cc",
+ "process/process_metrics_freebsd.cc",
@@ -54,39 +58,19 @@
+ ]
+ }
+
-+
-+
- # Allow more direct string conversions on platforms with native utf8
- # strings
- if (is_mac || is_ios || is_chromeos || is_chromecast) {
-@@ -1520,7 +1545,7 @@
- }
-
- # Linux.
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- if (is_asan || is_lsan || is_msan || is_tsan) {
- # For llvm-sanitizer.
- data += [ "//third_party/llvm-build/Release+Asserts/lib/libstdc++.so.6" ]
-@@ -1545,7 +1570,7 @@
- "//base/third_party/xdg_user_dirs",
- ]
- } else {
-- # Non-Linux.
-+ # Non-Linux/BSD.
- sources -= [
- "nix/mime_util_xdg.cc",
- "nix/mime_util_xdg.h",
-@@ -2392,6 +2417,12 @@
- "trace_event/trace_event_android_unittest.cc",
+ # iOS
+ if (is_ios) {
+ set_sources_assignment_filter([])
+@@ -2389,6 +2416,12 @@
]
set_sources_assignment_filter(sources_assignment_filter)
-+ }
+ }
+
+ if (is_bsd) {
+ sources -= [
+ "debug/proc_maps_linux_unittest.cc",
+ ]
- }
++ }
if (is_win) {
+ deps += [ "//base:scoped_handle_test_dll" ]
diff --git a/www/chromium/files/patch-base_posix_unix__domain__socket__linux.cc b/www/chromium/files/patch-base_posix_unix__domain__socket.cc
index 7e2921ca5695..31324d592776 100644
--- a/www/chromium/files/patch-base_posix_unix__domain__socket__linux.cc
+++ b/www/chromium/files/patch-base_posix_unix__domain__socket.cc
@@ -1,49 +1,49 @@
---- base/posix/unix_domain_socket_linux.cc.orig 2017-08-03 00:05:03.000000000 +0200
-+++ base/posix/unix_domain_socket_linux.cc 2017-08-10 00:44:31.627900000 +0200
+--- base/posix/unix_domain_socket.cc.orig 2018-01-04 21:05:38.000000000 +0100
++++ base/posix/unix_domain_socket.cc 2018-01-06 12:44:56.681201000 +0100
@@ -5,7 +5,10 @@
- #include "base/posix/unix_domain_socket_linux.h"
+ #include "base/posix/unix_domain_socket.h"
#include <errno.h>
-+#include <sys/types.h>
+#include <sys/param.h>
#include <sys/socket.h>
++#include <sys/types.h>
+#include <sys/ucred.h>
- #include <unistd.h>
-
- #include <vector>
-@@ -25,6 +28,14 @@
+ #if !defined(OS_NACL_NONSFI)
+ #include <sys/un.h>
+ #endif
+@@ -28,6 +31,14 @@
const size_t UnixDomainSocket::kMaxFileDescriptors = 16;
+#ifndef SCM_CREDENTIALS
-+# define SCM_CREDENTIALS 0X9001
++# define SCM_CREDENTIALS 0x9001
+#endif
+
+#ifndef SO_PASSCRED
-+# define SO_PASSCRED 0x9002
++# define SO_PASSCRED 0x9002
+#endif
+
#if !defined(OS_NACL_NONSFI)
bool CreateSocketPair(ScopedFD* one, ScopedFD* two) {
int raw_socks[2];
-@@ -114,7 +125,7 @@
- CMSG_SPACE(sizeof(int) * kMaxFileDescriptors)
- #if !defined(OS_NACL_NONSFI)
- // The PNaCl toolchain for Non-SFI binary build does not support ucred.
+@@ -150,7 +161,7 @@
+ #if !defined(OS_NACL_NONSFI) && !defined(OS_MACOSX)
+ // The PNaCl toolchain for Non-SFI binary build and macOS do not support
+ // ucred. macOS supports xucred, but this structure is insufficient.
- + CMSG_SPACE(sizeof(struct ucred))
-+ + CMSG_SPACE(sizeof(struct sockcred))
- #endif
++ + CMSG_SPACE(sizeof(struct cmsgcred))
+ #endif // OS_NACL_NONSFI or OS_MACOSX
;
char control_buffer[kControlBufferSize];
-@@ -145,9 +156,9 @@
+@@ -180,9 +191,9 @@
// SCM_CREDENTIALS.
if (cmsg->cmsg_level == SOL_SOCKET &&
cmsg->cmsg_type == SCM_CREDENTIALS) {
- DCHECK_EQ(payload_len, sizeof(struct ucred));
-+ DCHECK_EQ(payload_len, sizeof(struct sockcred));
++ DCHECK_EQ(payload_len, sizeof(struct cmsgcred));
DCHECK_EQ(pid, -1);
- pid = reinterpret_cast<struct ucred*>(CMSG_DATA(cmsg))->pid;
+ pid = getpid();
}
- #endif
+ #endif // !defined(OS_NACL_NONSFI) && !defined(OS_MACOSX)
}
diff --git a/www/chromium/files/patch-base_posix_unix__domain__socket__linux__unittest.cc b/www/chromium/files/patch-base_posix_unix__domain__socket__linux__unittest.cc
deleted file mode 100644
index 388ab54a555a..000000000000
--- a/www/chromium/files/patch-base_posix_unix__domain__socket__linux__unittest.cc
+++ /dev/null
@@ -1,18 +0,0 @@
---- base/posix/unix_domain_socket_linux_unittest.cc.orig 2017-04-19 19:06:28 UTC
-+++ base/posix/unix_domain_socket_linux_unittest.cc
-@@ -2,10 +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 <stddef.h>
- #include <stdint.h>
- #include <sys/socket.h>
- #include <sys/types.h>
-+#if defined(OS_BSD)
-+#include <signal.h>
-+#endif
- #include <unistd.h>
-
- #include "base/bind.h"
diff --git a/www/chromium/files/patch-base_posix_unix__domain__socket__unittest.cc b/www/chromium/files/patch-base_posix_unix__domain__socket__unittest.cc
new file mode 100644
index 000000000000..aaf58fc27d17
--- /dev/null
+++ b/www/chromium/files/patch-base_posix_unix__domain__socket__unittest.cc
@@ -0,0 +1,12 @@
+--- base/posix/unix_domain_socket_unittest.cc.orig 2017-12-23 20:50:07.237565000 +0100
++++ base/posix/unix_domain_socket_unittest.cc 2017-12-23 20:51:05.651558000 +0100
+@@ -8,6 +8,9 @@
+ #include <stdint.h>
+ #include <sys/socket.h>
+ #include <sys/types.h>
++#if defined(OS_BSD)
++#include <signal.h>
++#endif
+ #include <unistd.h>
+
+ #include "base/bind.h"
diff --git a/www/chromium/files/patch-base_process_memory.cc b/www/chromium/files/patch-base_process_memory.cc
index 566b3557e930..d2c40dbbc6a2 100644
--- a/www/chromium/files/patch-base_process_memory.cc
+++ b/www/chromium/files/patch-base_process_memory.cc
@@ -1,6 +1,15 @@
---- base/process/memory.cc.orig 2017-06-05 19:03:00 UTC
-+++ base/process/memory.cc
-@@ -31,7 +31,7 @@ void TerminateBecauseOutOfMemory(size_t size) {
+--- base/process/memory.cc.orig 2017-12-15 02:04:05.000000000 +0100
++++ base/process/memory.cc 2017-12-31 09:49:46.308931000 +0100
+@@ -10,7 +10,7 @@
+ namespace base {
+
+ // Defined in memory_win.cc for Windows.
+-#if !defined(OS_WIN)
++#if !defined(OS_WIN) && !defined(OS_BSD)
+
+ namespace {
+
+@@ -31,7 +31,7 @@
#endif
// Defined in memory_mac.mm for Mac.
diff --git a/www/chromium/files/patch-base_process_process__handle__freebsd.cc b/www/chromium/files/patch-base_process_process__handle__freebsd.cc
index 4115ed2efc48..e02b802778fd 100644
--- a/www/chromium/files/patch-base_process_process__handle__freebsd.cc
+++ b/www/chromium/files/patch-base_process_process__handle__freebsd.cc
@@ -1,6 +1,6 @@
---- base/process/process_handle_freebsd.cc.orig 2017-04-19 19:06:28 UTC
-+++ base/process/process_handle_freebsd.cc
-@@ -16,7 +16,7 @@ namespace base {
+--- base/process/process_handle_freebsd.cc.orig 2018-01-04 21:05:38.000000000 +0100
++++ base/process/process_handle_freebsd.cc 2018-01-27 02:11:02.948007000 +0100
+@@ -16,10 +16,13 @@
ProcessId GetParentProcessId(ProcessHandle process) {
struct kinfo_proc info;
@@ -9,3 +9,9 @@
int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process };
if (sysctl(mib, arraysize(mib), &info, &length, NULL, 0) < 0)
++ return -1;
++
++ if (length < sizeof(struct kinfo_proc))
+ return -1;
+
+ return info.ki_ppid;
diff --git a/www/chromium/files/patch-base_process_process__iterator__freebsd.cc b/www/chromium/files/patch-base_process_process__iterator__freebsd.cc
index e9b72d6254dc..357ce1033d2b 100644
--- a/www/chromium/files/patch-base_process_process__iterator__freebsd.cc
+++ b/www/chromium/files/patch-base_process_process__iterator__freebsd.cc
@@ -1,5 +1,5 @@
---- base/process/process_iterator_freebsd.cc.orig 2017-06-05 19:03:00 UTC
-+++ base/process/process_iterator_freebsd.cc
+--- base/process/process_iterator_freebsd.cc.orig 2018-01-04 21:05:38.000000000 +0100
++++ base/process/process_iterator_freebsd.cc 2018-01-27 17:58:40.475292000 +0100
@@ -10,6 +10,10 @@
#include <sys/sysctl.h>
#include <unistd.h>
@@ -11,7 +11,16 @@
#include "base/logging.h"
#include "base/macros.h"
#include "base/strings/string_split.h"
-@@ -72,19 +76,13 @@ bool ProcessIterator::CheckForNextProcess() {
+@@ -40,7 +44,7 @@
+ num_of_kinfo_proc += 16;
+ kinfo_procs_.resize(num_of_kinfo_proc);
+ len = num_of_kinfo_proc * sizeof(struct kinfo_proc);
+- if (sysctl(mib, arraysize(mib), &kinfo_procs_[0], &len, NULL, 0) <0) {
++ if (sysctl(mib, arraysize(mib), kinfo_procs_.data(), &len, NULL, 0) <0) {
+ // If we get a mem error, it just means we need a bigger buffer, so
+ // loop around again. Anything else is a real error and give up.
+ if (errno != ENOMEM) {
+@@ -72,19 +76,13 @@
for (; index_of_kinfo_proc_ < kinfo_procs_.size(); ++index_of_kinfo_proc_) {
size_t length;
struct kinfo_proc kinfo = kinfo_procs_[index_of_kinfo_proc_];
diff --git a/www/chromium/files/patch-base_process_process__metrics.cc b/www/chromium/files/patch-base_process_process__metrics.cc
new file mode 100644
index 000000000000..5f45b9680278
--- /dev/null
+++ b/www/chromium/files/patch-base_process_process__metrics.cc
@@ -0,0 +1,11 @@
+--- base/process/process_metrics.cc.orig 2017-12-23 21:01:02.481980000 +0100
++++ base/process/process_metrics.cc 2017-12-23 21:01:15.848759000 +0100
+@@ -10,7 +10,7 @@
+ #include "base/values.h"
+ #include "build/build_config.h"
+
+-#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_AIX)
++#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_AIX) || defined(OS_BSD)
+ namespace {
+ int CalculateEventsPerSecond(uint64_t event_count,
+ uint64_t* last_event_count,
diff --git a/www/chromium/files/patch-base_process_process__metrics.h b/www/chromium/files/patch-base_process_process__metrics.h
index 2441552e9782..70aaf3ae0685 100644
--- a/www/chromium/files/patch-base_process_process__metrics.h
+++ b/www/chromium/files/patch-base_process_process__metrics.h
@@ -1,19 +1,15 @@
---- base/process/process_metrics.h.orig 2017-07-25 21:04:48.000000000 +0200
-+++ base/process/process_metrics.h 2017-08-01 22:08:56.153263000 +0200
-@@ -22,6 +22,12 @@
- #include "base/values.h"
- #include "build/build_config.h"
-
-+#if defined(OS_BSD)
-+#include <kvm.h>
-+#include <sys/param.h>
-+#include <sys/sysctl.h>
-+#endif
-+
- #if defined(OS_MACOSX)
- #include <mach/mach.h>
- #include "base/process/port_provider_mac.h"
-@@ -215,7 +221,7 @@
+--- base/process/process_metrics.h.orig 2017-12-23 20:56:16.823419000 +0100
++++ base/process/process_metrics.h 2017-12-23 20:58:52.195249000 +0100
+@@ -103,7 +103,7 @@
+ size_t image;
+ };
+
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ // Minor and major page fault counts since the process creation.
+ // Both counts are process-wide, and exclude child processes.
+ //
+@@ -245,7 +245,7 @@
// otherwise.
bool GetIOCounters(IoCounters* io_counters) const;
@@ -22,23 +18,34 @@
// Returns the number of file descriptors currently open by the process, or
// -1 on error.
int GetOpenFdCount() const;
-@@ -223,12 +229,12 @@
- // Returns the soft limit of file descriptors that can be opened by the
- // process, or -1 on error.
+@@ -255,7 +255,7 @@
int GetOpenFdSoftLimit() const;
--#endif // defined(OS_LINUX) || defined(OS_AIX)
-+#endif // defined(OS_LINUX) || defined(OS_AIX) || defined(OS_BSD)
+ #endif // defined(OS_LINUX) || defined(OS_AIX)
-#if defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
// Bytes of swap as reported by /proc/[pid]/status.
uint64_t GetVmSwapBytes() const;
--#endif // defined(OS_LINUX) || defined(OS_ANDROID)
-+#endif // defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
- private:
- #if !defined(OS_MACOSX) || defined(OS_IOS)
-@@ -304,7 +310,7 @@
+@@ -282,7 +282,7 @@
+ bool GetWorkingSetKBytesTotmaps(WorkingSetKBytes *ws_usage) const;
+ #endif
+
+-#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_AIX)
++#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_AIX) || defined(OS_BSD)
+ int CalculateIdleWakeupsPerSecond(uint64_t absolute_idle_wakeups);
+ #endif
+ #if defined(OS_MACOSX)
+@@ -303,7 +303,7 @@
+ TimeTicks last_cpu_time_;
+ int64_t last_system_time_;
+
+-#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_AIX)
++#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_AIX) || defined(OS_BSD)
+ // Same thing for idle wakeups.
+ TimeTicks last_idle_wakeups_time_;
+ uint64_t last_absolute_idle_wakeups_;
+@@ -351,7 +351,7 @@
#endif // defined(OS_POSIX)
#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \
@@ -47,7 +54,16 @@
// Data about system-wide memory consumption. Values are in KB. Available on
// Windows, Mac, Linux, Android and Chrome OS.
//
-@@ -352,7 +358,7 @@
+@@ -384,7 +384,7 @@
+ int avail_phys = 0;
+ #endif
+
+-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_AIX)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_AIX) || defined(OS_BSD)
+ // 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
+@@ -399,7 +399,7 @@
#endif
#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_AIX) || \
diff --git a/www/chromium/files/patch-base_process_process__metrics__freebsd.cc b/www/chromium/files/patch-base_process_process__metrics__freebsd.cc
index 264992ce9550..7f4a0bfe0ca8 100644
--- a/www/chromium/files/patch-base_process_process__metrics__freebsd.cc
+++ b/www/chromium/files/patch-base_process_process__metrics__freebsd.cc
@@ -1,16 +1,17 @@
---- base/process/process_metrics_freebsd.cc.orig 2017-06-05 19:03:00 UTC
-+++ base/process/process_metrics_freebsd.cc
-@@ -13,6 +13,9 @@
+--- base/process/process_metrics_freebsd.cc.orig 2018-01-04 21:05:38.000000000 +0100
++++ base/process/process_metrics_freebsd.cc 2018-01-27 20:04:35.262483000 +0100
+@@ -12,6 +12,10 @@
+ #include "base/macros.h"
#include "base/memory/ptr_util.h"
- #include "base/sys_info.h"
+#include <unistd.h> /* getpagesize() */
+#include <fcntl.h> /* O_RDONLY */
++#include <kvm.h>
+
namespace base {
ProcessMetrics::ProcessMetrics(ProcessHandle process)
-@@ -120,6 +123,25 @@ size_t GetSystemCommitCharge() {
+@@ -118,6 +122,60 @@
pagesize = getpagesize();
return mem_total - (mem_free*pagesize) - (mem_inactive*pagesize);
@@ -33,6 +34,41 @@
+ return 0;
+
+ return nproc;
++}
++
++bool GetSystemMemoryInfo(SystemMemoryInfoKB *meminfo) {
++ unsigned int mem_total, mem_free, swap_total, swap_used;
++ size_t length;
++ int pagesizeKB;
++
++ pagesizeKB = getpagesize() / 1024;
++
++ length = sizeof(mem_total);
++ if (sysctlbyname("vm.stats.vm.v_page_count", &mem_total,
++ &length, NULL, 0) != 0 || length != sizeof(mem_total))
++ return false;
++
++ length = sizeof(mem_free);
++ if (sysctlbyname("vm.stats.vm.v_free_count", &mem_free, &length, NULL, 0)
++ != 0 || length != sizeof(mem_free))
++ return false;
++
++ length = sizeof(swap_total);
++ if (sysctlbyname("vm.swap_size", &swap_total, &length, NULL, 0)
++ != 0 || length != sizeof(swap_total))
++ return false;
++
++ length = sizeof(swap_used);
++ if (sysctlbyname("vm.swap_anon_use", &swap_used, &length, NULL, 0)
++ != 0 || length != sizeof(swap_used))
++ return false;
++
++ meminfo->total = mem_total * pagesizeKB;
++ meminfo->free = mem_free * pagesizeKB;
++ meminfo->swap_total = swap_total * pagesizeKB;
++ meminfo->swap_free = (swap_total - swap_used) * pagesizeKB;
++
++ return true;
}
} // namespace base
diff --git a/www/chromium/files/patch-base_process_process__posix.cc b/www/chromium/files/patch-base_process_process__posix.cc
index bf09d2565e93..637d67b75b51 100644
--- a/www/chromium/files/patch-base_process_process__posix.cc
+++ b/www/chromium/files/patch-base_process_process__posix.cc
@@ -1,11 +1,10 @@
---- base/process/process_posix.cc.orig 2017-07-25 21:04:48.000000000 +0200
-+++ base/process/process_posix.cc 2017-08-02 19:38:18.657740000 +0200
-@@ -22,8 +22,18 @@
+--- base/process/process_posix.cc.orig 2017-12-15 02:04:05.000000000 +0100
++++ base/process/process_posix.cc 2017-12-23 21:14:03.546283000 +0100
+@@ -22,8 +22,17 @@
#include <sys/event.h>
#endif
+#if defined(OS_BSD)
-+#include <signal.h>
+#include <sys/types.h>
+#include <sys/event.h>
+#include <sys/time.h>
@@ -19,71 +18,50 @@
#if !defined(OS_NACL_NONSFI)
bool WaitpidWithTimeout(base::ProcessHandle handle,
-@@ -186,13 +196,13 @@
- base::ProcessHandle our_pid = base::GetCurrentProcessHandle();
-
- if (parent_pid != our_pid) {
--#if defined(OS_MACOSX)
-+#if defined(OS_MACOSX) || defined(OS_BSD)
- // On Mac we can wait on non child processes.
-- return WaitForSingleNonChildProcess(handle, timeout);
-+ /* return WaitForSingleNonChildProcess(handle, timeout); */
- #else
- // Currently on Linux we can't handle non child processes.
- NOTIMPLEMENTED();
--#endif // OS_MACOSX
-+#endif // OS_MACOSX || OS_BSD
- }
-
- int status;
-@@ -258,12 +268,16 @@
+@@ -263,12 +272,10 @@
return Process(handle);
}
-#if !defined(OS_LINUX) && !defined(OS_MACOSX) && !defined(OS_AIX)
-+#if !defined(OS_LINUX) && !defined(OS_MACOSX) && !defined(OS_AIX) && !defined(OS_BSD)
// static
bool Process::CanBackgroundProcesses() {
- return false;
+- return false;
++ return true;
}
-#endif // !defined(OS_LINUX) && !defined(OS_MACOSX) && !defined(OS_AIX)
-+#elif defined(OS_FREEBSD)
-+bool Process::CanBackgroundProcesses() {
-+ return true;
-+}
-+#endif // !defined(OS_LINUX) && !defined(OS_MACOSX) && !defined(OS_AIX) && !defined(OS_BSD)
// static
void Process::TerminateCurrentProcessImmediately(int exit_code) {
-@@ -371,15 +385,31 @@
+@@ -372,21 +379,23 @@
+ return WaitForExitWithTimeoutImpl(Handle(), exit_code, timeout);
+ }
+
+-#if !defined(OS_LINUX) && !defined(OS_MACOSX) && !defined(OS_AIX)
bool Process::IsProcessBackgrounded() const {
// See SetProcessBackgrounded().
DCHECK(IsValid());
-+#if defined(OS_FREEBSD)
-+ return true;
-+#else
- return false;
-+#endif
+- return false;
++ return GetPriority() == kBackgroundPriority;
}
- bool Process::SetProcessBackgrounded(bool value) {
-+#if !defined(OS_FREEBSD)
- // Not implemented for POSIX systems other than Linux and Mac. With POSIX, if
- // we were to lower the process priority we wouldn't be able to raise it back
- // to its initial priority.
- NOTIMPLEMENTED();
- return false;
-+#else
+-bool Process::SetProcessBackgrounded(bool value) {
+- // Not implemented for POSIX systems other than Linux and Mac. With POSIX, if
+- // we were to lower the process priority we wouldn't be able to raise it back
+- // to its initial priority.
+- NOTIMPLEMENTED();
+- return false;
++bool Process::SetProcessBackgrounded(bool background) {
+ DCHECK(IsValid());
+
+ if (!CanBackgroundProcesses())
+ return false;
+
-+ int priority = value ? kBackgroundPriority : kForegroundPriority;
-+ int result = setpriority(PRIO_PROCESS, process_, priority);
-+
++ int priority = background ? kBackgroundPriority : kForegroundPriority;
++ int result = setpriority(PRIO_PROCESS, process_, priority);
++ DPCHECK(result == 0);
+ return result == 0;
-+#endif // !defined(OS_FREEBSD)
}
- #endif // !defined(OS_LINUX) && !defined(OS_MACOSX) && !defined(OS_AIX)
+-#endif // !defined(OS_LINUX) && !defined(OS_MACOSX) && !defined(OS_AIX)
+ int Process::GetPriority() const {
+ DCHECK(IsValid());
diff --git a/www/chromium/files/patch-base_sys__info__freebsd.cc b/www/chromium/files/patch-base_sys__info__freebsd.cc
index e4e7c8478ebf..7b97b7f17fd9 100644
--- a/www/chromium/files/patch-base_sys__info__freebsd.cc
+++ b/www/chromium/files/patch-base_sys__info__freebsd.cc
@@ -1,30 +1,9 @@
---- base/sys_info_freebsd.cc.orig 2017-06-05 19:03:00 UTC
-+++ base/sys_info_freebsd.cc
-@@ -12,12 +12,34 @@
-
+--- base/sys_info_freebsd.cc.orig 2017-12-15 02:04:05.000000000 +0100
++++ base/sys_info_freebsd.cc 2017-12-23 21:51:22.626194000 +0100
+@@ -13,26 +13,58 @@
namespace base {
-+int64_t SysInfo::AmountOfAvailablePhysicalMemory() {
-+ int page_size, r = 0;
-+ unsigned pgfree, pginact, pgcache;
-+ size_t size = sizeof(page_size);
-+ size_t szpg = sizeof(pgfree);
-+ if(r == 0)
-+ r = sysctlbyname("vm.stats.vm.v_page_size", &page_size, &size, NULL, 0);
-+ if(r == 0)
-+ r = sysctlbyname("vm.stats.vm.v_free_count", &pgfree, &szpg, NULL, 0);
-+ if(r == 0)
-+ r = sysctlbyname("vm.stats.vm.v_inactive_count", &pginact, &szpg, NULL, 0);
-+ if(r == 0)
-+ r = sysctlbyname("vm.stats.vm.v_cache_count", &pgcache, &szpg, NULL, 0);
-+ if (r == -1) {
-+ NOTREACHED();
-+ return 0;
-+ }
-+ return static_cast<int64_t>((pgfree + pginact + pgcache) * page_size);
-+}
-+
- int64_t SysInfo::AmountOfPhysicalMemory() {
+ int64_t SysInfo::AmountOfPhysicalMemoryImpl() {
- int pages, page_size;
+ int pages, page_size, r = 0;
size_t size = sizeof(pages);
@@ -34,19 +13,41 @@
+ if(r == 0)
+ r = sysctlbyname("vm.stats.vm.v_page_count", &pages, &size, NULL, 0);
+ if(r == 0)
-+ r = sysctlbyname("vm.stats.vm.v_page_size", &page_size, &size, NULL, 0);
-+ if (r == -1) {
++ r =sysctlbyname("vm.stats.vm.v_page_size", &page_size, &size, NULL, 0);
++ if(r == -1) {
NOTREACHED();
return 0;
}
-@@ -25,14 +47,24 @@ int64_t SysInfo::AmountOfPhysicalMemory() {
+ return static_cast<int64_t>(pages) * page_size;
}
- // static
+-// static
-uint64_t SysInfo::MaxSharedMemorySize() {
- size_t limit;
- size_t size = sizeof(limit);
- if (sysctlbyname("kern.ipc.shmmax", &limit, &size, NULL, 0) < 0) {
++int64_t SysInfo::AmountOfAvailablePhysicalMemoryImpl() {
++ int page_size, r = 0;
++ unsigned pgfree, pginact, pgcache;
++ size_t size = sizeof(page_size);
++ size_t szpg = sizeof(pgfree);
++ if(r == 0)
++ r = sysctlbyname("vm.stats.vm.v_page_size", &page_size, &size, NULL, 0);
++ if(r == 0)
++ r = sysctlbyname("vm.stats.vm.v_free_count", &pgfree, &szpg, NULL, 0);
++ if(r == 0)
++ r = sysctlbyname("vm.stats.vm.v_inactive_count", &pginact, &szpg, NULL, 0);
++ if(r == 0)
++ r = sysctlbyname("vm.stats.vm.v_cache_count", &pgcache, &szpg, NULL, 0);
++ if(r == -1) {
+ NOTREACHED();
+ return 0;
+ }
+- 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 };
+ char name[256];
@@ -61,11 +62,9 @@
+ int ncpu;
+ size_t size = sizeof(ncpu);
+ if (sysctl(mib, arraysize(mib), &ncpu, &size, NULL, 0) == -1) {
- NOTREACHED();
-- return 0;
++ NOTREACHED();
+ return 1;
- }
-- return static_cast<uint64_t>(limit);
++ }
+ return ncpu;
}
diff --git a/www/chromium/files/patch-base_sys__info__posix.cc b/www/chromium/files/patch-base_sys__info__posix.cc
index 55be5c388c74..d7fc3b435a62 100644
--- a/www/chromium/files/patch-base_sys__info__posix.cc
+++ b/www/chromium/files/patch-base_sys__info__posix.cc
@@ -1,5 +1,5 @@
---- base/sys_info_posix.cc.orig 2017-09-05 21:05:11.000000000 +0200
-+++ base/sys_info_posix.cc 2017-09-11 02:55:59.022874000 +0200
+--- base/sys_info_posix.cc.orig 2018-01-04 21:05:38.000000000 +0100
++++ base/sys_info_posix.cc 2018-01-27 20:03:02.391851000 +0100
@@ -35,7 +35,7 @@
namespace {
@@ -9,7 +9,16 @@
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.
-@@ -128,7 +128,7 @@
+@@ -62,7 +62,7 @@
+ 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() {
+@@ -130,7 +130,7 @@
namespace base {
@@ -18,7 +27,7 @@
int SysInfo::NumberOfProcessors() {
return g_lazy_number_of_processors.Get().value();
}
-@@ -219,6 +219,8 @@
+@@ -223,6 +223,8 @@
arch = "x86";
} else if (arch == "amd64") {
arch = "x86_64";
diff --git a/www/chromium/files/patch-base_test_BUILD.gn b/www/chromium/files/patch-base_test_BUILD.gn
deleted file mode 100644
index 18d53d634b5f..000000000000
--- a/www/chromium/files/patch-base_test_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- base/test/BUILD.gn.orig 2017-06-05 19:03:00 UTC
-+++ base/test/BUILD.gn
-@@ -314,7 +314,7 @@ static_library("run_all_base_unittests") {
- ]
- }
-
--if (is_linux) {
-+if (is_linux || is_bsd) {
- shared_library("malloc_wrapper") {
- testonly = true
- sources = [
diff --git a/www/chromium/files/patch-base_test_launcher_test__launcher.cc b/www/chromium/files/patch-base_test_launcher_test__launcher.cc
index 4900d326214d..2aa96398d644 100644
--- a/www/chromium/files/patch-base_test_launcher_test__launcher.cc
+++ b/www/chromium/files/patch-base_test_launcher_test__launcher.cc
@@ -1,13 +1,10 @@
---- base/test/launcher/test_launcher.cc.orig 2017-06-05 19:03:00 UTC
-+++ base/test/launcher/test_launcher.cc
-@@ -61,6 +61,10 @@
- #include "base/win/windows_version.h"
- #endif
+--- base/test/launcher/test_launcher.cc.orig 2017-12-15 02:04:05.000000000 +0100
++++ base/test/launcher/test_launcher.cc 2017-12-30 02:02:22.630578000 +0100
+@@ -51,6 +51,7 @@
+ #include "testing/gtest/include/gtest/gtest.h"
-+#if defined(OS_FREEBSD)
+ #if defined(OS_POSIX)
+#include <signal.h>
-+#endif
-+
- namespace base {
+ #include <fcntl.h>
- // See https://groups.google.com/a/chromium.org/d/msg/chromium-dev/nkdTP7sstSc/uT3FaE_sgkAJ .
+ #include "base/files/file_descriptor_watcher_posix.h"
diff --git a/www/chromium/files/patch-base_third__party_libevent_BUILD.gn b/www/chromium/files/patch-base_third__party_libevent_BUILD.gn
index 9e48a48508a8..b02b2a11a816 100644
--- a/www/chromium/files/patch-base_third__party_libevent_BUILD.gn
+++ b/www/chromium/files/patch-base_third__party_libevent_BUILD.gn
@@ -1,6 +1,14 @@
---- base/third_party/libevent/BUILD.gn.orig 2017-08-03 00:05:03.000000000 +0200
-+++ base/third_party/libevent/BUILD.gn 2017-08-03 14:47:35.196280000 +0200
-@@ -50,6 +50,13 @@
+--- base/third_party/libevent/BUILD.gn.orig 2018-01-04 21:05:38.000000000 +0100
++++ base/third_party/libevent/BUILD.gn 2018-01-06 01:02:53.058845000 +0100
+@@ -43,13 +43,20 @@
+ "mac/event-config.h",
+ ]
+ include_dirs = [ "mac" ]
+- } else if (is_linux) {
++ } else if (is_linux && !is_bsd) {
+ sources += [
+ "epoll.c",
+ "linux/config.h",
"linux/event-config.h",
]
include_dirs = [ "linux" ]
diff --git a/www/chromium/files/patch-base_trace__event_process__memory__dump.cc b/www/chromium/files/patch-base_trace__event_process__memory__dump.cc
index 0f20b8c032ed..264cd13b467c 100644
--- a/www/chromium/files/patch-base_trace__event_process__memory__dump.cc
+++ b/www/chromium/files/patch-base_trace__event_process__memory__dump.cc
@@ -1,11 +1,11 @@
---- base/trace_event/process_memory_dump.cc.orig 2017-06-05 19:03:01 UTC
-+++ base/trace_event/process_memory_dump.cc
-@@ -83,7 +83,7 @@ size_t ProcessMemoryDump::CountResidentBytes(void* sta
+--- base/trace_event/process_memory_dump.cc.orig 2017-12-15 02:04:05.000000000 +0100
++++ base/trace_event/process_memory_dump.cc 2017-12-23 21:58:59.977492000 +0100
+@@ -86,7 +86,7 @@
const size_t kMaxChunkSize = 8 * 1024 * 1024;
size_t max_vec_size =
GetSystemPageCount(std::min(mapped_size, kMaxChunkSize), page_size);
--#if defined(OS_MACOSX) || defined(OS_IOS)
-+#if defined(OS_MACOSX) || defined(OS_IOS) || defined(OS_BSD)
+-#if defined(OS_MACOSX)
++#if defined(OS_MACOSX) || defined(OS_BSD)
std::unique_ptr<char[]> vec(new char[max_vec_size]);
#elif defined(OS_WIN)
std::unique_ptr<PSAPI_WORKING_SET_EX_INFORMATION[]> vec(
diff --git a/www/chromium/files/patch-breakpad_BUILD.gn b/www/chromium/files/patch-breakpad_BUILD.gn
deleted file mode 100644
index b9b4422e70b3..000000000000
--- a/www/chromium/files/patch-breakpad_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- breakpad/BUILD.gn.orig 2017-09-07 03:01:37.610794000 +0200
-+++ breakpad/BUILD.gn 2017-09-07 03:02:03.521046000 +0200
-@@ -472,7 +472,7 @@
- }
- }
-
--if (is_linux || is_android) {
-+if (is_linux || is_bsd || is_android) {
- if (current_toolchain == host_toolchain) {
- executable("symupload") {
- sources = [
diff --git a/www/chromium/files/patch-breakpad_src_common_simple__string__dictionary.h b/www/chromium/files/patch-breakpad_src_common_simple__string__dictionary.h
deleted file mode 100644
index 307f136e9b98..000000000000
--- a/www/chromium/files/patch-breakpad_src_common_simple__string__dictionary.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- breakpad/src/common/simple_string_dictionary.h.orig 2017-04-19 19:07:40 UTC
-+++ breakpad/src/common/simple_string_dictionary.h
-@@ -33,7 +33,7 @@
- #include <assert.h>
- #include <string.h>
-
--#include "common/basictypes.h"
-+#include "breakpad/src/common/basictypes.h"
-
- namespace google_breakpad {
-
diff --git a/www/chromium/files/patch-build_config_BUILDCONFIG.gn b/www/chromium/files/patch-build_config_BUILDCONFIG.gn
index 218eb5a140fc..4c70e0ad7bb7 100644
--- a/www/chromium/files/patch-build_config_BUILDCONFIG.gn
+++ b/www/chromium/files/patch-build_config_BUILDCONFIG.gn
@@ -1,5 +1,5 @@
---- build/config/BUILDCONFIG.gn.orig 2017-09-05 21:05:11.000000000 +0200
-+++ build/config/BUILDCONFIG.gn 2017-09-06 17:04:08.044575000 +0200
+--- build/config/BUILDCONFIG.gn.orig 2017-12-15 02:04:05.000000000 +0100
++++ build/config/BUILDCONFIG.gn 2017-12-30 02:24:17.939908000 +0100
@@ -131,13 +131,13 @@
is_official_build = false
@@ -36,32 +36,89 @@
# See comments in build/toolchain/cros/BUILD.gn about board compiles.
if (is_clang) {
_default_toolchain = "//build/toolchain/linux:clang_$target_cpu"
-@@ -379,8 +379,18 @@
+@@ -297,6 +297,7 @@
+ is_nacl = false
+ is_posix = false
+ is_win = true
++ is_bsd = false
+ } else if (current_os == "mac") {
+ is_android = false
+ is_chromeos = false
+@@ -307,6 +308,7 @@
+ is_nacl = false
+ is_posix = true
+ is_win = false
++ is_bsd = false
+ } else if (current_os == "android") {
+ is_android = true
+ is_chromeos = false
+@@ -317,6 +319,7 @@
+ is_nacl = false
+ is_posix = true
+ is_win = false
++ is_bsd = false
+ } else if (current_os == "chromeos") {
+ is_android = false
+ is_chromeos = true
+@@ -327,6 +330,7 @@
+ is_nacl = false
+ is_posix = true
+ is_win = false
++ is_bsd = false
+ } else if (current_os == "nacl") {
+ # current_os == "nacl" will be passed by the nacl toolchain definition.
+ # It is not set by default or on the command line. We treat is as a
+@@ -340,6 +344,7 @@
+ is_nacl = true
+ is_posix = true
+ is_win = false
++ is_bsd = false
+ } else if (current_os == "fuchsia") {
+ is_android = false
+ is_chromeos = false
+@@ -350,6 +355,7 @@
is_nacl = false
is_posix = true
is_win = false
++ is_bsd = false
+ } else if (current_os == "ios") {
+ is_android = false
+ is_chromeos = false
+@@ -360,6 +366,7 @@
+ is_nacl = false
+ is_posix = true
+ is_win = false
++ is_bsd = false
+ } else if (current_os == "linux") {
+ is_android = false
+ is_chromeos = false
+@@ -370,6 +377,7 @@
+ is_nacl = false
+ is_posix = true
+ is_win = false
++ is_bsd = false
+ } else if (current_os == "aix") {
+ is_android = false
+ is_chromeos = false
+@@ -379,8 +387,20 @@
+ is_nacl = false
+ is_posix = true
+ is_win = false
++ is_bsd = false
+} else if (current_os == "bsd") {
+ is_android = false
+ is_chromeos = false
+ is_fuchsia = false
+ is_ios = false
-+ is_linux = false
++ is_linux = true
+ is_bsd = true
+ is_mac = false
+ is_nacl = false
+ is_posix = true
+ is_win = false
++ is_bsd = true
}
-
# =============================================================================
# SOURCES FILTERS
# =============================================================================
-@@ -450,7 +460,7 @@
- if (!is_mac && !is_ios) {
- sources_assignment_filter += [ "*.mm" ]
- }
--if (!is_linux) {
-+if (!is_linux && !is_bsd) {
- sources_assignment_filter += [
- "*_linux.h",
- "*_linux.cc",
diff --git a/www/chromium/files/patch-build_config_clang_BUILD.gn b/www/chromium/files/patch-build_config_clang_BUILD.gn
deleted file mode 100644
index ce0ea6dc615f..000000000000
--- a/www/chromium/files/patch-build_config_clang_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- build/config/clang/BUILD.gn.orig 2017-06-05 19:03:01 UTC
-+++ build/config/clang/BUILD.gn
-@@ -19,7 +19,7 @@ config("find_bad_constructs") {
- rebase_path("${clang_base_path}/lib/libFindBadConstructs.dylib",
- root_build_dir),
- ]
-- } else if (is_linux || is_android) {
-+ } else if (is_linux || is_bsd || is_android) {
- cflags += [
- "-Xclang",
- "-load",
-@@ -40,7 +40,7 @@ config("find_bad_constructs") {
- "check-auto-raw-pointer",
- ]
-
-- if (is_linux || is_android) {
-+ if (is_linux || is_bsd || is_android) {
- cflags += [
- "-Xclang",
- "-plugin-arg-find-bad-constructs",
diff --git a/www/chromium/files/patch-build_config_compiler_BUILD.gn b/www/chromium/files/patch-build_config_compiler_BUILD.gn
index 3a62b1bfc762..82763f0cc241 100644
--- a/www/chromium/files/patch-build_config_compiler_BUILD.gn
+++ b/www/chromium/files/patch-build_config_compiler_BUILD.gn
@@ -1,6 +1,6 @@
---- build/config/compiler/BUILD.gn.orig 2017-09-05 21:05:11.000000000 +0200
-+++ build/config/compiler/BUILD.gn 2017-09-11 02:57:48.188641000 +0200
-@@ -46,7 +46,7 @@
+--- build/config/compiler/BUILD.gn.orig 2018-01-04 21:05:38.000000000 +0100
++++ build/config/compiler/BUILD.gn 2018-01-20 16:53:24.701867000 +0100
+@@ -47,7 +47,7 @@
# 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,15 +9,6 @@
(current_cpu == "x64" || current_cpu == "x86")
binutils_path = rebase_path("//third_party/binutils/Linux_x64/Release/bin",
root_build_dir)
-@@ -167,7 +167,7 @@
- configs += [ "//build/config/win:compiler" ]
- } else if (is_android) {
- configs += [ "//build/config/android:compiler" ]
-- } else if (is_linux) {
-+ } else if (is_linux || is_bsd) {
- configs += [ "//build/config/linux:compiler" ]
- } else if (is_nacl) {
- configs += [ "//build/config/nacl:compiler" ]
@@ -222,7 +222,7 @@
# Linker warnings.
if (fatal_linker_warnings && !(is_chromeos && current_cpu == "arm") &&
@@ -27,89 +18,72 @@
# 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
-@@ -319,7 +319,7 @@
-
- # Linux/Android common flags setup.
- # ---------------------------------
-- if (is_linux || is_android || is_fuchsia) {
-+ if (is_linux || is_android || is_bsd || is_fuchsia) {
- if (use_pic) {
- cflags += [ "-fPIC" ]
- ldflags += [ "-fPIC" ]
-@@ -509,7 +509,7 @@
- ldflags += [ "-flto" ]
-
- # Apply a lower LTO optimization level as the default is too slow.
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- if (use_lld) {
- ldflags += [ "-Wl,--lto-O1" ]
- } else {
-@@ -532,7 +532,7 @@
- # Also, when targeting ARM, without this flag, LTO produces a .text section
- # that is larger than the maximum call displacement, preventing the linker
- # from relocating calls (http://llvm.org/PR22999).
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- if (use_lld) {
- ldflags += [
- "-Wl,-mllvm,-function-sections",
-@@ -603,7 +603,7 @@
+@@ -326,8 +326,6 @@
+ "-Wl,-z,relro",
+ ]
+ if (!using_sanitizer) {
+- ldflags += [ "-Wl,-z,defs" ]
+-
+ # Functions interposed by the sanitizers can make ld think
+ # that some libraries aren't needed when they actually are,
+ # http://crbug.com/234010. As workaround, disable --as-needed.
+@@ -424,7 +422,7 @@
+ # TODO(hans): Remove this once Clang generates better optimized debug info by
+ # default. https://crbug.com/765793
+ if (is_clang && !is_nacl && current_toolchain == host_toolchain &&
+- target_os != "chromeos") {
++ target_os != "chromeos" && !is_bsd) {
+ cflags += [
+ "-Xclang",
+ "-mllvm",
+@@ -638,7 +636,7 @@
cflags += [ "-mtune=$arm_tune" ]
}
} else if (current_cpu == "arm64") {
-- if (is_clang && !is_android && !is_nacl) {
-+ if (is_clang && !is_android && !is_nacl && !is_bsd) {
+- if (is_clang && !is_android && !is_nacl && !is_fuchsia) {
++ if (is_clang && !is_android && !is_nacl && !is_fuchsia && !is_bsd) {
cflags += [ "--target=aarch64-linux-gnu" ]
ldflags += [ "--target=aarch64-linux-gnu" ]
}
-@@ -854,11 +854,11 @@
- # configs -= [ "//build/config/compiler:clang_stackrealign" ]
- # See https://crbug.com/556393 for details of where it must be avoided.
- config("clang_stackrealign") {
-- if (is_clang && current_cpu == "x86" && (is_android || is_linux)) {
-+ if (is_clang && current_cpu == "x86" && (is_android || is_linux || is_bsd)) {
- # Android needs -mstackrealign due to a bug on ia32 Jelly Bean.
- # See crbug.com/521527
- cflags = [ "-mstackrealign" ]
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- # Align the stack on 16-byte boundaries, http://crbug.com/418554.
- cflags += [ "-mstack-alignment=16" ]
- }
-@@ -910,7 +910,7 @@
- # smaller.
- if (is_win) {
- configs += [ "//build/config/win:runtime_library" ]
-- } else if (is_linux) {
-+ } else if (is_linux || is_bsd) {
- configs += [ "//build/config/linux:runtime_library" ]
- } else if (is_ios) {
- configs += [ "//build/config/ios:runtime_library" ]
-@@ -1164,7 +1164,7 @@
+@@ -1261,23 +1259,8 @@
+ # TODO(hans): https://crbug.com/637306
"-Wno-address-of-packed-member",
- # TODO(hans): https://crbug.com/681136
+- # TODO(hans): https://crbug.com/681136
- "-Wno-unused-lambda-capture",
-+ # "-Wno-unused-lambda-capture",
-
+-
# TODO(thakis ): https://crbug.com/683349
"-Wno-user-defined-warnings",
-@@ -1214,7 +1214,7 @@
- ]
-
- if (!is_debug && !using_sanitizer &&
-- (!is_linux || !is_clang || is_official_build) &&
-+ (!is_linux || !is_bsd || !is_clang || is_official_build) &&
- current_cpu != "s390x" && current_cpu != "s390" &&
- current_cpu != "ppc64" && current_cpu != "ppc64" &&
- current_cpu != "mips" && current_cpu != "mips64") {
-@@ -1734,7 +1734,7 @@
- # "-gdwarf-3" doesn't work with dump_syms in Chrome OS.
+-
+- # TODO(thakis): https://crbug.com/753973
+- "-Wno-enum-compare-switch",
+-
+- # TODO(hans): https://crbug.com/763392
+- "-Wno-tautological-unsigned-zero-compare",
+-
+- # TODO(hans): https://crbug.com/766891
+- "-Wno-null-pointer-arithmetic",
+-
+- # TODO(hans): https://crbug.com/767059
+- "-Wno-tautological-unsigned-enum-zero-compare",
+ ]
+ } else if (use_xcode_clang && xcode_version_int >= 830) {
+ # This is necessary to allow a progressive transition from using xcode 8.0
+@@ -1861,7 +1844,7 @@
+ # [1] crrev.com/a81d5ade0b043208e06ad71a38bcf9c348a1a52f
cflags += [ "-gdwarf-3" ]
}
- cflags += [ "-g2" ]
+ cflags += [ "-g0" ]
}
- if (use_debug_fission) {
+ if (use_debug_fission && !is_nacl) {
cflags += [ "-gsplit-dwarf" ]
+@@ -1875,7 +1858,7 @@
+ # 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 && target_cpu != "x86" &&
+- (use_gold || use_lld)) {
++ (use_gold || use_lld) && !is_bsd) {
+ if (is_clang) {
+ # This flag enables the GNU-format pubnames and pubtypes sections,
+ # which lld needs in order to generate a correct GDB index.
diff --git a/www/chromium/files/patch-build_config_crypto.gni b/www/chromium/files/patch-build_config_crypto.gni
deleted file mode 100644
index aed07e7239dc..000000000000
--- a/www/chromium/files/patch-build_config_crypto.gni
+++ /dev/null
@@ -1,8 +0,0 @@
---- build/config/crypto.gni.orig 2017-06-05 19:03:01 UTC
-+++ build/config/crypto.gni
-@@ -20,4 +20,4 @@ use_openssl_certs = is_android || is_nacl
-
- # True if NSS is used for certificate handling. It is possible to use OpenSSL
- # for the crypto library, but NSS for the platform certificate library.
--use_nss_certs = is_linux
-+use_nss_certs = is_linux || is_bsd
diff --git a/www/chromium/files/patch-build_config_features.gni b/www/chromium/files/patch-build_config_features.gni
index abd2ce501bfa..89de733794c0 100644
--- a/www/chromium/files/patch-build_config_features.gni
+++ b/www/chromium/files/patch-build_config_features.gni
@@ -1,22 +1,11 @@
---- build/config/features.gni.orig 2017-06-05 19:03:01 UTC
-+++ build/config/features.gni
-@@ -58,15 +58,15 @@ declare_args() {
+--- build/config/features.gni.orig 2017-12-15 02:04:05.000000000 +0100
++++ build/config/features.gni 2017-12-23 23:30:21.417932000 +0100
+@@ -46,7 +46,7 @@
fieldtrial_testing_like_official_build = is_chrome_branded
# libudev usage. This currently only affects the content layer.
- use_udev = is_linux && !is_chromecast
+ use_udev = is_linux && !is_chromecast && !is_bsd
-- use_dbus = is_linux && !is_chromecast
-+ use_dbus = (is_linux || is_bsd) && !is_chromecast
+ use_dbus = is_linux && !is_chromecast
- # Option controlling the use of GConf (the classic GNOME configuration
- # system).
-- use_gconf = is_linux && !is_chromeos && !is_chromecast
-+ use_gconf = (is_linux || is_bsd) && !is_chromeos && !is_chromecast
-
-- use_gio = is_linux && !is_chromeos && !is_chromecast
-+ use_gio = (is_linux || is_bsd) && !is_chromeos && !is_chromecast
- }
- #
- # =============================================
diff --git a/www/chromium/files/patch-build_config_linux_gtk2_BUILD.gn b/www/chromium/files/patch-build_config_linux_gtk2_BUILD.gn
deleted file mode 100644
index 9943c1388043..000000000000
--- a/www/chromium/files/patch-build_config_linux_gtk2_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- build/config/linux/gtk2/BUILD.gn.orig 2017-04-19 19:06:28 UTC
-+++ build/config/linux/gtk2/BUILD.gn
-@@ -4,7 +4,7 @@
-
- import("//build/config/linux/pkg_config.gni")
-
--assert(is_linux, "This file should only be referenced on Linux")
-+assert(is_linux || is_bsd, "This file should only be referenced on Linux")
-
- # Depend on //build/config/linux/gtk2 to use GTKv2. Depend on
- # //build/config/linux/gtk to get GTK 2 or 3 depending on the build flags.
diff --git a/www/chromium/files/patch-build_config_linux_gtk3_BUILD.gn b/www/chromium/files/patch-build_config_linux_gtk3_BUILD.gn
deleted file mode 100644
index e9bc6f57d64d..000000000000
--- a/www/chromium/files/patch-build_config_linux_gtk3_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- build/config/linux/gtk3/BUILD.gn.orig 2017-04-19 19:06:28 UTC
-+++ build/config/linux/gtk3/BUILD.gn
-@@ -4,7 +4,7 @@
-
- import("//build/config/linux/pkg_config.gni")
-
--assert(is_linux, "This file should only be referenced on Linux")
-+assert(is_linux || is_bsd, "This file should only be referenced on Linux")
-
- # Depend on //build/config/linux/gtk3 to use GTKv3. Depend on
- # //build/config/linux/gtk to get GTK 2 or 3 depending on the build flags.
diff --git a/www/chromium/files/patch-build_config_linux_gtk_BUILD.gn b/www/chromium/files/patch-build_config_linux_gtk_BUILD.gn
deleted file mode 100644
index b7ad2252b439..000000000000
--- a/www/chromium/files/patch-build_config_linux_gtk_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- build/config/linux/gtk/BUILD.gn.orig 2017-04-19 19:06:28 UTC
-+++ build/config/linux/gtk/BUILD.gn
-@@ -5,7 +5,7 @@
- import("//build/config/linux/gtk/gtk.gni")
- import("//build/config/linux/pkg_config.gni")
-
--assert(is_linux, "This file should only be referenced on Linux")
-+assert(is_linux || is_bsd, "This file should only be referenced on Linux")
-
- # The target in this file will automatically reference GTK2 or GTK3 depending
- # on the state of the build flag. Some builds reference both 2 and 3, and some
diff --git a/www/chromium/files/patch-build_config_sanitizers_BUILD.gn b/www/chromium/files/patch-build_config_sanitizers_BUILD.gn
deleted file mode 100644
index 56efe1f7ec82..000000000000
--- a/www/chromium/files/patch-build_config_sanitizers_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- build/config/sanitizers/BUILD.gn.orig 2017-06-05 19:03:01 UTC
-+++ build/config/sanitizers/BUILD.gn
-@@ -438,7 +438,7 @@ config("lsan_flags") {
-
- config("msan_flags") {
- if (is_msan) {
-- assert(is_linux, "msan only supported on linux x86_64")
-+ assert(is_linux || is_bsd, "msan only supported on linux x86_64")
- if (!defined(msan_blacklist_path)) {
- msan_blacklist_path =
- rebase_path("//tools/msan/blacklist.txt", root_build_dir)
-@@ -453,7 +453,7 @@ config("msan_flags") {
-
- config("tsan_flags") {
- if (is_tsan) {
-- assert(is_linux, "tsan only supported on linux x86_64")
-+ assert(is_linux || is_bsd, "tsan only supported on linux x86_64")
- if (!defined(tsan_blacklist_path)) {
- tsan_blacklist_path =
- rebase_path("//tools/memory/tsan_v2/ignores.txt", root_build_dir)
diff --git a/www/chromium/files/patch-build_config_sanitizers_sanitizers.gni b/www/chromium/files/patch-build_config_sanitizers_sanitizers.gni
deleted file mode 100644
index f7eeffba7876..000000000000
--- a/www/chromium/files/patch-build_config_sanitizers_sanitizers.gni
+++ /dev/null
@@ -1,13 +0,0 @@
---- build/config/sanitizers/sanitizers.gni.orig 2017-04-19 19:06:28 UTC
-+++ build/config/sanitizers/sanitizers.gni
-@@ -54,8 +54,8 @@ declare_args() {
- # See http://clang.llvm.org/docs/ControlFlowIntegrity.html
- #
- # TODO(pcc): Remove this flag if/when CFI is enabled in all official builds.
-- is_cfi = target_os == "linux" && !is_chromeos && target_cpu == "x64" &&
-- is_official_build && allow_posix_link_time_opt
-+ is_cfi = (target_os == "linux" || target_os == "bsd") && !is_chromeos &&
-+ target_cpu == "x64" && is_official_build && allow_posix_link_time_opt
-
- # Enable checks for bad casts: derived cast and unrelated cast.
- # TODO(krasin): remove this, when we're ready to add these checks by default.
diff --git a/www/chromium/files/patch-build_config_ui.gni b/www/chromium/files/patch-build_config_ui.gni
deleted file mode 100644
index c3816df22883..000000000000
--- a/www/chromium/files/patch-build_config_ui.gni
+++ /dev/null
@@ -1,32 +0,0 @@
---- build/config/ui.gni.orig 2017-06-05 19:03:01 UTC
-+++ build/config/ui.gni
-@@ -31,10 +31,10 @@ declare_args() {
-
- # Indicates if Aura is enabled. Aura is a low-level windowing library, sort
- # of a replacement for GDI or GTK.
-- use_aura = is_win || is_linux
-+ use_aura = is_win || is_linux || is_bsd
-
- # Whether we should use glib, a low level C utility library.
-- use_glib = is_linux
-+ use_glib = is_linux || is_bsd
- }
-
- declare_args() {
-@@ -48,14 +48,14 @@ declare_args() {
- # These variables depend on other variables and can't be set externally.
-
- # Indicates if the UI toolkit depends on X11.
--use_x11 = is_linux && !use_ozone
-+use_x11 = (is_linux || is_bsd) && !use_ozone
-
- # Turn off glib if Ozone is enabled.
- if (use_ozone) {
- use_glib = false
- }
-
--if (is_linux && !use_ozone) {
-+if ((is_linux || is_bsd) && !use_ozone) {
- use_cairo = true
- use_pango = true
- } else {
diff --git a/www/chromium/files/patch-build_gn_run_binary.py b/www/chromium/files/patch-build_gn_run_binary.py
new file mode 100644
index 000000000000..f1dfcd53ca79
--- /dev/null
+++ b/www/chromium/files/patch-build_gn_run_binary.py
@@ -0,0 +1,11 @@
+--- build/gn_run_binary.py.orig 2017-12-30 01:00:32.419195000 +0100
++++ build/gn_run_binary.py 2017-12-30 01:01:14.497716000 +0100
+@@ -19,7 +19,7 @@
+ # The rest of the arguments are passed directly to the executable.
+ args = [path] + sys.argv[2:]
+
+-ret = subprocess.call(args)
++ret = subprocess.call(args, env={"CHROME_EXE_PATH":"${WRKSRC}/out/Release/chrome"})
+ if ret != 0:
+ print '%s failed with exit code %d' % (sys.argv[1], ret)
+ sys.exit(ret)
diff --git a/www/chromium/files/patch-build_linux_unbundle_freetype.gn b/www/chromium/files/patch-build_linux_unbundle_freetype.gn
new file mode 100644
index 000000000000..1ad68530cecd
--- /dev/null
+++ b/www/chromium/files/patch-build_linux_unbundle_freetype.gn
@@ -0,0 +1,136 @@
+--- build/linux/unbundle/freetype.gn.orig 2017-12-15 02:04:05.000000000 +0100
++++ build/linux/unbundle/freetype.gn 2017-12-29 23:54:58.915246000 +0100
+@@ -2,124 +2,13 @@
+ # Use of this source code is governed by a BSD-style license that can be
+ # found in the LICENSE file.
+
+-import("//build/config/linux/pkg_config.gni")
+-import("//build/shim_headers.gni")
+-
+-pkg_config("freetype_config") {
+- packages = [ "freetype2" ]
+-}
+-
+-shim_headers("freetype_shim") {
+- root_path = "src/include"
+- headers = [
+- # This list can easily be updated using the command below:
+- # find third_party/freetype/src/include \
+- # -iname '*.h' -printf '"%p",\n' | \
+- # sed -e 's|third_party/freetype/src/include/||' | sort -u
+- "freetype/config/ftconfig.h",
+- "freetype/config/ftheader.h",
+- "freetype/config/ftmodule.h",
+- "freetype/config/ftoption.h",
+- "freetype/config/ftstdlib.h",
+- "freetype/freetype.h",
+- "freetype/ftadvanc.h",
+- "freetype/ftautoh.h",
+- "freetype/ftbbox.h",
+- "freetype/ftbdf.h",
+- "freetype/ftbitmap.h",
+- "freetype/ftbzip2.h",
+- "freetype/ftcache.h",
+- "freetype/ftcffdrv.h",
+- "freetype/ftchapters.h",
+- "freetype/ftcid.h",
+- "freetype/fterrdef.h",
+- "freetype/fterrors.h",
+- "freetype/ftfntfmt.h",
+- "freetype/ftgasp.h",
+- "freetype/ftglyph.h",
+- "freetype/ftgxval.h",
+- "freetype/ftgzip.h",
+- "freetype/ftimage.h",
+- "freetype/ftincrem.h",
+- "freetype/ftlcdfil.h",
+- "freetype/ftlist.h",
+- "freetype/ftlzw.h",
+- "freetype/ftmac.h",
+- "freetype/ftmm.h",
+- "freetype/ftmodapi.h",
+- "freetype/ftmoderr.h",
+- "freetype/ftotval.h",
+- "freetype/ftoutln.h",
+- "freetype/ftpcfdrv.h",
+- "freetype/ftpfr.h",
+- "freetype/ftrender.h",
+- "freetype/ftsizes.h",
+- "freetype/ftsnames.h",
+- "freetype/ftstroke.h",
+- "freetype/ftsynth.h",
+- "freetype/ftsystem.h",
+- "freetype/fttrigon.h",
+- "freetype/ftttdrv.h",
+- "freetype/fttypes.h",
+- "freetype/ftwinfnt.h",
+- "freetype/internal/autohint.h",
+- "freetype/internal/ftcalc.h",
+- "freetype/internal/ftdebug.h",
+- "freetype/internal/ftdriver.h",
+- "freetype/internal/ftgloadr.h",
+- "freetype/internal/fthash.h",
+- "freetype/internal/ftmemory.h",
+- "freetype/internal/ftobjs.h",
+- "freetype/internal/ftpic.h",
+- "freetype/internal/ftrfork.h",
+- "freetype/internal/ftserv.h",
+- "freetype/internal/ftstream.h",
+- "freetype/internal/fttrace.h",
+- "freetype/internal/ftvalid.h",
+- "freetype/internal/internal.h",
+- "freetype/internal/psaux.h",
+- "freetype/internal/pshints.h",
+- "freetype/internal/services/svbdf.h",
+- "freetype/internal/services/svcid.h",
+- "freetype/internal/services/svfntfmt.h",
+- "freetype/internal/services/svgldict.h",
+- "freetype/internal/services/svgxval.h",
+- "freetype/internal/services/svkern.h",
+- "freetype/internal/services/svmetric.h",
+- "freetype/internal/services/svmm.h",
+- "freetype/internal/services/svotval.h",
+- "freetype/internal/services/svpfr.h",
+- "freetype/internal/services/svpostnm.h",
+- "freetype/internal/services/svprop.h",
+- "freetype/internal/services/svpscmap.h",
+- "freetype/internal/services/svpsinfo.h",
+- "freetype/internal/services/svsfnt.h",
+- "freetype/internal/services/svttcmap.h",
+- "freetype/internal/services/svtteng.h",
+- "freetype/internal/services/svttglyf.h",
+- "freetype/internal/services/svwinfnt.h",
+- "freetype/internal/sfnt.h",
+- "freetype/internal/t1types.h",
+- "freetype/internal/tttypes.h",
+- "freetype/t1tables.h",
+- "freetype/ttnameid.h",
+- "freetype/tttables.h",
+- "freetype/tttags.h",
+- "freetype/ttunpat.h",
+- "ft2build.h",
+- ]
+-}
+-
+-source_set("freetype") {
+- deps = [
+- ":freetype_shim",
+- ]
+- public_configs = [ ":freetype_config" ]
+-}
+-
+-source_set("bootstrap_freetype_for_harfbuzz") {
+- deps = [
+- ":freetype_shim",
+- ]
+- public_configs = [ ":freetype_config" ]
++declare_args() {
++ # Blink needs a recent and properly build-configured FreeType version to
++ # support OpenType variations, color emoji and avoid security bugs. By default
++ # we ship and link such a version as part of Chrome. For distributions that
++ # prefer to keep linking to the version the system, FreeType must be newer
++ # than version 2.7.1 and have color bitmap support compiled in. WARNING:
++ # System FreeType configurations other than as described WILL INTRODUCE TEXT
++ # RENDERING AND SECURITY REGRESSIONS.
++ use_system_freetype = true
+ }
diff --git a/www/chromium/files/patch-build_linux_unbundle_harfbuzz-ng.gn b/www/chromium/files/patch-build_linux_unbundle_harfbuzz-ng.gn
new file mode 100644
index 000000000000..2e3374947f5d
--- /dev/null
+++ b/www/chromium/files/patch-build_linux_unbundle_harfbuzz-ng.gn
@@ -0,0 +1,17 @@
+--- build/linux/unbundle/harfbuzz-ng.gn.orig 2017-12-29 23:59:50.296068000 +0100
++++ build/linux/unbundle/harfbuzz-ng.gn 2017-12-30 00:01:59.725212000 +0100
+@@ -12,6 +12,14 @@
+ ]
+ }
+
++pkg_config("harfbuzz_from_pkgconfig") {
++ visibility = [
++ "//third_party:freetype_harfbuzz",
++ "//third_party/freetype:freetype_source",
++ ]
++ packages = [ "harfbuzz" ]
++}
++
+ shim_headers("harfbuzz_shim") {
+ root_path = "src"
+ headers = [ "hb.h" ]
diff --git a/www/chromium/files/patch-build_linux_unbundle_replace_gn_files.py b/www/chromium/files/patch-build_linux_unbundle_replace_gn_files.py
new file mode 100644
index 000000000000..a9b3ed30e7cb
--- /dev/null
+++ b/www/chromium/files/patch-build_linux_unbundle_replace_gn_files.py
@@ -0,0 +1,11 @@
+--- build/linux/unbundle/replace_gn_files.py.orig 2017-12-29 23:33:23.502737000 +0100
++++ build/linux/unbundle/replace_gn_files.py 2017-12-29 23:34:06.066488000 +0100
+@@ -19,7 +19,7 @@
+ REPLACEMENTS = {
+ 'ffmpeg': 'third_party/ffmpeg/BUILD.gn',
+ 'flac': 'third_party/flac/BUILD.gn',
+- 'freetype': 'third_party/freetype/BUILD.gn',
++ 'freetype': 'build/config/freetype/freetype.gni',
+ 'harfbuzz-ng': 'third_party/harfbuzz-ng/BUILD.gn',
+ 'icu': 'third_party/icu/BUILD.gn',
+ 'libdrm': 'third_party/libdrm/BUILD.gn',
diff --git a/www/chromium/files/patch-build_secondary_third__party_nss_BUILD.gn b/www/chromium/files/patch-build_secondary_third__party_nss_BUILD.gn
deleted file mode 100644
index 509d6110710b..000000000000
--- a/www/chromium/files/patch-build_secondary_third__party_nss_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- build/secondary/third_party/nss/BUILD.gn.orig 2017-04-19 19:06:28 UTC
-+++ build/secondary/third_party/nss/BUILD.gn
-@@ -4,7 +4,7 @@
-
- import("//build/config/linux/pkg_config.gni")
-
--if (is_linux) {
-+if (is_linux || is_bsd) {
- # This is a dependency on NSS with no libssl. On Linux we use a built-in SSL
- # library but the system NSS libraries. Non-Linux platforms using NSS use the
- # hermetic one in //third_party/nss.
diff --git a/www/chromium/files/patch-cc_BUILD.gn b/www/chromium/files/patch-cc_BUILD.gn
new file mode 100644
index 000000000000..4e40dedebb20
--- /dev/null
+++ b/www/chromium/files/patch-cc_BUILD.gn
@@ -0,0 +1,22 @@
+--- cc/BUILD.gn.orig 2017-12-30 06:26:13.722587000 +0100
++++ cc/BUILD.gn 2017-12-30 06:26:46.042197000 +0100
+@@ -541,7 +541,7 @@
+ "//ui/gl:test_support",
+ "//ui/latency",
+ ]
+- if (!is_android) {
++ if (!is_android && !is_bsd) {
+ data_deps = [
+ "//third_party/mesa:osmesa",
+ ]
+@@ -717,10 +717,6 @@
+ "//ui/gfx/geometry",
+ "//ui/gl",
+ "//ui/gl:test_support",
+- ]
+-
+- data_deps = [
+- "//third_party/mesa:osmesa",
+ ]
+ }
+
diff --git a/www/chromium/files/patch-chrome_BUILD.gn b/www/chromium/files/patch-chrome_BUILD.gn
index e07dd83cb2c1..f57dff18f025 100644
--- a/www/chromium/files/patch-chrome_BUILD.gn
+++ b/www/chromium/files/patch-chrome_BUILD.gn
@@ -1,6 +1,6 @@
---- chrome/BUILD.gn.orig 2017-09-05 21:05:11.000000000 +0200
-+++ chrome/BUILD.gn 2017-09-06 17:18:59.694120000 +0200
-@@ -165,7 +165,7 @@
+--- chrome/BUILD.gn.orig 2017-12-15 02:04:06.000000000 +0100
++++ chrome/BUILD.gn 2017-12-25 06:31:53.132995000 +0100
+@@ -152,7 +152,7 @@
]
data += [ "$root_out_dir/resources.pak" ]
@@ -9,21 +9,3 @@
data += [
"$root_out_dir/chrome_100_percent.pak",
"$root_out_dir/locales/en-US.pak",
-@@ -245,7 +245,7 @@
- }
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "app/chrome_dll_resource.h",
- "app/chrome_main.cc",
-@@ -1783,7 +1783,7 @@
- }
- }
-
--if (is_linux) {
-+if (is_linux || is_bsd) {
- action("manpage") {
- if (is_chrome_branded) {
- name = "Google Chrome"
diff --git a/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc b/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc
index 905369239fc9..c56c38b1f390 100644
--- a/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc
+++ b/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc
@@ -1,15 +1,15 @@
---- chrome/app/chrome_main_delegate.cc.orig 2017-09-05 21:05:12.000000000 +0200
-+++ chrome/app/chrome_main_delegate.cc 2017-09-06 17:38:27.122172000 +0200
-@@ -94,7 +94,7 @@
+--- chrome/app/chrome_main_delegate.cc.orig 2017-12-15 02:04:07.000000000 +0100
++++ chrome/app/chrome_main_delegate.cc 2017-12-24 00:00:14.610706000 +0100
+@@ -96,7 +96,7 @@
#include "chrome/app/shutdown_signal_handlers_posix.h"
#endif
--#if !defined(DISABLE_NACL) && defined(OS_LINUX)
-+#if !defined(DISABLE_NACL) && defined(OS_LINUX) && !defined(OS_BSD)
+-#if BUILDFLAG(ENABLE_NACL) && defined(OS_LINUX)
++#if BUILDFLAG(ENABLE_NACL) && defined(OS_LINUX) && !defined(OS_BSD)
#include "components/nacl/common/nacl_paths.h"
#include "components/nacl/zygote/nacl_fork_delegate_linux.h"
#endif
-@@ -140,7 +140,7 @@
+@@ -137,7 +137,7 @@
#include "v8/include/v8.h"
#endif
@@ -18,7 +18,7 @@
#include "base/environment.h"
#endif
-@@ -183,7 +183,7 @@
+@@ -176,7 +176,7 @@
g_chrome_content_browser_client = LAZY_INSTANCE_INITIALIZER;
#endif
@@ -27,7 +27,7 @@
base::LazyInstance<ChromeCrashReporterClient>::Leaky g_chrome_crash_client =
LAZY_INSTANCE_INITIALIZER;
#endif
-@@ -309,7 +309,7 @@
+@@ -304,7 +304,7 @@
// and resources loaded.
bool SubprocessNeedsResourceBundle(const std::string& process_type) {
return
@@ -36,7 +36,7 @@
// The zygote process opens the resources for the renderers.
process_type == switches::kZygoteProcess ||
#endif
-@@ -361,7 +361,7 @@
+@@ -356,7 +356,7 @@
}
#endif
@@ -45,7 +45,7 @@
void SIGTERMProfilingShutdown(int signal) {
Profiling::Stop();
struct sigaction sigact;
-@@ -428,7 +428,7 @@
+@@ -408,7 +408,7 @@
std::string process_type =
command_line->GetSwitchValueASCII(switches::kProcessType);
@@ -54,7 +54,16 @@
// On Linux, Chrome does not support running multiple copies under different
// DISPLAYs, so the profile directory can be specified in the environment to
// support the virtual desktop use-case.
-@@ -630,7 +630,7 @@
+@@ -582,7 +582,7 @@
+ #if defined(OS_CHROMEOS)
+ chromeos::RegisterPathProvider();
+ #endif
+-#if BUILDFLAG(ENABLE_NACL) && defined(OS_LINUX)
++#if BUILDFLAG(ENABLE_NACL) && defined(OS_LINUX) && !defined(OS_BSD)
+ nacl::RegisterPathProvider();
+ #endif
+
+@@ -604,7 +604,7 @@
std::string format_str =
command_line.GetSwitchValueASCII(switches::kDiagnosticsFormat);
if (format_str == "machine") {
@@ -63,7 +72,7 @@
} else if (format_str == "log") {
format = diagnostics::DiagnosticsWriter::LOG;
} else {
-@@ -680,7 +680,7 @@
+@@ -654,7 +654,7 @@
std::string format_str =
command_line.GetSwitchValueASCII(switches::kDiagnosticsFormat);
if (format_str == "machine") {
@@ -72,7 +81,7 @@
} else if (format_str == "human") {
format = diagnostics::DiagnosticsWriter::HUMAN;
} else {
-@@ -792,7 +792,7 @@
+@@ -766,7 +766,7 @@
std::string process_type =
command_line.GetSwitchValueASCII(switches::kProcessType);
@@ -81,7 +90,7 @@
crash_reporter::SetCrashReporterClient(g_chrome_crash_client.Pointer());
#endif
-@@ -932,7 +932,7 @@
+@@ -906,7 +906,7 @@
chrome::InitializePDF();
#endif
@@ -90,7 +99,7 @@
// Zygote needs to call InitCrashReporter() in RunZygote().
if (process_type != switches::kZygoteProcess) {
#if defined(OS_ANDROID)
-@@ -947,7 +947,7 @@
+@@ -922,7 +922,7 @@
breakpad::InitCrashReporter(process_type);
#endif // defined(OS_ANDROID)
}
@@ -99,7 +108,16 @@
// After all the platform Breakpads have been initialized, store the command
// line for crash reporting.
-@@ -1053,7 +1053,7 @@
+@@ -975,7 +975,7 @@
+ // This entry is not needed on Linux, where the NaCl loader
+ // process is launched via nacl_helper instead.
+ #if BUILDFLAG(ENABLE_NACL) && !defined(CHROME_MULTIPLE_DLL_BROWSER) && \
+- !defined(OS_LINUX)
++ !defined(OS_LINUX) && !defined(OS_BSD)
+ {switches::kNaClLoaderProcess, NaClMain},
+ #else
+ {"<invalid>", NULL}, // To avoid constant array of size 0
+@@ -1028,7 +1028,7 @@
#endif
return process_type == switches::kRelauncherProcess;
}
diff --git a/www/chromium/files/patch-chrome_app_generated__resources.grd b/www/chromium/files/patch-chrome_app_generated__resources.grd
index 24c86ac9d135..be4e9ccdd6b4 100644
--- a/www/chromium/files/patch-chrome_app_generated__resources.grd
+++ b/www/chromium/files/patch-chrome_app_generated__resources.grd
@@ -1,15 +1,15 @@
---- chrome/app/generated_resources.grd.orig 2017-09-05 21:05:12.000000000 +0200
-+++ chrome/app/generated_resources.grd 2017-09-07 19:12:11.757513000 +0200
-@@ -7906,7 +7906,7 @@
- <message name="IDS_APPEARANCE_GROUP_NAME" desc="The title of the appearance group">
- Appearance
+--- chrome/app/generated_resources.grd.orig 2017-12-15 02:04:07.000000000 +0100
++++ chrome/app/generated_resources.grd 2017-12-24 00:06:55.397820000 +0100
+@@ -6903,7 +6903,7 @@
+ Google Payments
</message>
+
- <if expr="not is_linux or chromeos">
+ <if expr="not is_posix or chromeos">
<message name="IDS_THEMES_GROUP_NAME" desc="The title of the themes group">
Themes
</message>
-@@ -7914,7 +7914,7 @@
+@@ -6911,7 +6911,7 @@
<message name="IDS_THEMES_RESET_BUTTON" desc="The button to reset your theme">
Reset to default theme
</message>
@@ -18,7 +18,7 @@
<message name="IDS_THEMES_GTK_BUTTON" desc="The button to choose GTK colors and icons as the current theme.">
Use GTK+ theme
</message>
-@@ -9183,7 +9183,7 @@
+@@ -8061,7 +8061,7 @@
Set as default
</message>
diff --git a/www/chromium/files/patch-chrome_app_mash_embedded_services.cc b/www/chromium/files/patch-chrome_app_mash_embedded_services.cc
deleted file mode 100644
index e18417907e87..000000000000
--- a/www/chromium/files/patch-chrome_app_mash_embedded_services.cc
+++ /dev/null
@@ -1,27 +0,0 @@
---- chrome/app/mash/embedded_services.cc.orig 2017-08-01 23:40:39.943252000 +0200
-+++ chrome/app/mash/embedded_services.cc 2017-08-01 23:42:02.268143000 +0200
-@@ -24,9 +24,9 @@
- #include "ash/touch_hud/mus/touch_hud_application.h" // nogncheck
- #endif // defined(OS_CHROMEOS)
-
--#if defined(OS_LINUX) && !defined(OS_ANDROID)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_ANDROID)
- #include "components/font_service/font_service_app.h"
--#endif // defined(OS_LINUX) && !defined(OS_ANDROID)
-+#endif // (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_ANDROID)
-
- std::unique_ptr<service_manager::Service> CreateEmbeddedMashService(
- const std::string& service_name) {
-@@ -53,10 +53,10 @@
- return base::MakeUnique<mash::task_viewer::TaskViewer>();
- if (service_name == "test_ime_driver")
- return base::MakeUnique<ui::test::TestIMEApplication>();
--#if defined(OS_LINUX) && !defined(OS_ANDROID)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_ANDROID)
- if (service_name == "font_service")
- return base::MakeUnique<font_service::FontServiceApp>();
--#endif // defined(OS_LINUX) && !defined(OS_ANDROID)
-+#endif // (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_ANDROID)
-
- return nullptr;
- }
diff --git a/www/chromium/files/patch-chrome_app_settings__strings.grdp b/www/chromium/files/patch-chrome_app_settings__strings.grdp
index af278e84813f..c22ac4530096 100644
--- a/www/chromium/files/patch-chrome_app_settings__strings.grdp
+++ b/www/chromium/files/patch-chrome_app_settings__strings.grdp
@@ -1,15 +1,15 @@
---- chrome/app/settings_strings.grdp.orig 2017-06-05 19:03:01 UTC
-+++ chrome/app/settings_strings.grdp
-@@ -278,7 +278,7 @@
- <message name="IDS_SETTINGS_THEMES" desc="Name of the control which allows the user to get a theme for the browser.">
- Themes
- </message>
+--- chrome/app/settings_strings.grdp.orig 2017-12-15 02:04:07.000000000 +0100
++++ chrome/app/settings_strings.grdp 2017-12-24 00:15:33.402792000 +0100
+@@ -363,7 +363,7 @@
+ Themes
+ </message>
+ </if>
- <if expr="is_linux and not chromeos">
+ <if expr="is_posix and not chromeos">
<message name="IDS_SETTINGS_SYSTEM_THEME" desc="Text of the label describing the system (GTK+) browser theme on Linux">
GTK+
</message>
-@@ -292,7 +292,7 @@
+@@ -377,7 +377,7 @@
Use Classic
</message>
</if>
diff --git a/www/chromium/files/patch-chrome_browser_BUILD.gn b/www/chromium/files/patch-chrome_browser_BUILD.gn
deleted file mode 100644
index a7d89d1e2977..000000000000
--- a/www/chromium/files/patch-chrome_browser_BUILD.gn
+++ /dev/null
@@ -1,38 +0,0 @@
---- chrome/browser/BUILD.gn.orig 2017-06-15 21:03:01.000000000 +0200
-+++ chrome/browser/BUILD.gn 2017-06-18 05:06:25.091310000 +0200
-@@ -2296,7 +2296,7 @@
- deps += [ "//device/udev_linux" ]
- }
-
-- if (is_linux && !is_chromeos) {
-+ if ((is_linux || is_bsd) && !is_chromeos) {
- deps += [ "//third_party/speech-dispatcher" ]
- }
-
-@@ -3721,7 +3721,7 @@
- }
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- if (use_aura) {
- deps += [ "//build/linux:fontconfig" ]
- if (use_dbus) {
-@@ -3734,7 +3734,7 @@
- }
- }
-
-- if (is_linux || is_win || is_mac) {
-+ if (is_linux || is_win || is_mac || is_bsd) {
- sources += [
- "payments/chrome_payment_request_delegate.cc",
- "payments/chrome_payment_request_delegate.h",
-@@ -3744,7 +3744,7 @@
- deps += [ "//components/payments/content" ]
- }
-
-- if (is_linux || is_win) {
-+ if (is_linux || is_win || is_bsd) {
- sources += [
- "renderer_context_menu/spelling_options_submenu_observer.cc",
- "renderer_context_menu/spelling_options_submenu_observer.h",
diff --git a/www/chromium/files/patch-chrome_browser_about__flags.cc b/www/chromium/files/patch-chrome_browser_about__flags.cc
index f781c07ce9e3..ddcd9d7f1b17 100644
--- a/www/chromium/files/patch-chrome_browser_about__flags.cc
+++ b/www/chromium/files/patch-chrome_browser_about__flags.cc
@@ -1,21 +1,24 @@
---- chrome/browser/about_flags.cc.orig 2017-06-05 19:03:01 UTC
-+++ chrome/browser/about_flags.cc
-@@ -1588,12 +1588,12 @@ const FeatureEntry kFeatureEntries[] = {
+--- chrome/browser/about_flags.cc.orig 2017-12-15 02:04:07.000000000 +0100
++++ chrome/browser/about_flags.cc 2017-12-24 00:29:31.459851000 +0100
+@@ -878,7 +878,7 @@
+ {"Learning", kSpeculativeResourcePrefetchingLearning,
+ arraysize(kSpeculativeResourcePrefetchingLearning), nullptr}};
+
+-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN)
++#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_BSD)
+ const FeatureEntry::FeatureParam kPauseBackgroundTabsMinimalEngagment[] = {
+ {pausetabs::kFeatureName, pausetabs::kModeParamMinimal}};
+
+@@ -1875,7 +1875,7 @@
ENABLE_DISABLE_VALUE_TYPE(switches::kEnableTranslateNewUX,
switches::kDisableTranslateNewUX)},
#endif // OS_MACOSX
--#if defined(OS_LINUX) || defined(OS_WIN) || defined(OS_CHROMEOS)
-+#if defined(OS_LINUX) || defined(OS_WIN) || defined(OS_CHROMEOS) || defined(OS_BSD)
+-#if defined(OS_LINUX) || defined(OS_WIN)
++#if defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD)
{"translate-2016q2-ui", flag_descriptions::kTranslate2016q2UiName,
flag_descriptions::kTranslate2016q2UiDescription,
kOsCrOS | kOsWin | kOsLinux,
- FEATURE_VALUE_TYPE(translate::kTranslateUI2016Q2)},
--#endif // OS_LINUX || OS_WIN || OS_CHROMEOS
-+#endif // OS_LINUX || OS_WIN || OS_CHROMEOS || OS_BSD
- {"translate-lang-by-ulp", flag_descriptions::kTranslateLanguageByUlpName,
- flag_descriptions::kTranslateLanguageByUlpDescription, kOsAll,
- FEATURE_VALUE_TYPE(translate::kTranslateLanguageByULP)},
-@@ -2071,12 +2071,12 @@ const FeatureEntry kFeatureEntries[] = {
+@@ -2407,12 +2407,12 @@
flag_descriptions::kEnableMaterialDesignExtensionsDescription, kOsDesktop,
FEATURE_VALUE_TYPE(features::kMaterialDesignExtensions)},
#endif // ENABLE_EXTENSIONS
@@ -30,3 +33,21 @@
{"enable-origin-trials", flag_descriptions::kOriginTrialsName,
flag_descriptions::kOriginTrialsDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kOriginTrials)},
+@@ -3008,7 +3008,7 @@
+ flag_descriptions::kLeftToRightUrlsDescription, kOsDesktop,
+ FEATURE_VALUE_TYPE(features::kLeftToRightUrls)},
+
+-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN)
++#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_BSD)
+ {"omnibox-entity-suggestions",
+ flag_descriptions::kOmniboxEntitySuggestionsName,
+ flag_descriptions::kOmniboxEntitySuggestionsDescription, kOsDesktop,
+@@ -3086,7 +3086,7 @@
+ FEATURE_VALUE_TYPE(chrome::android::kCustomContextMenu)},
+ #endif // OS_ANDROID
+
+-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN)
++#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_BSD)
+ {pausetabs::kFeatureName, flag_descriptions::kPauseBackgroundTabsName,
+ flag_descriptions::kPauseBackgroundTabsDescription, kOsDesktop,
+ FEATURE_WITH_PARAMS_VALUE_TYPE(pausetabs::kFeature,
diff --git a/www/chromium/files/patch-chrome_browser_browser__process__impl.cc b/www/chromium/files/patch-chrome_browser_browser__process__impl.cc
index 1f86805f229f..672652837c66 100644
--- a/www/chromium/files/patch-chrome_browser_browser__process__impl.cc
+++ b/www/chromium/files/patch-chrome_browser_browser__process__impl.cc
@@ -1,6 +1,6 @@
---- chrome/browser/browser_process_impl.cc.orig 2017-09-05 21:05:12.000000000 +0200
-+++ chrome/browser/browser_process_impl.cc 2017-09-06 17:46:42.465787000 +0200
-@@ -173,7 +173,7 @@
+--- chrome/browser/browser_process_impl.cc.orig 2017-12-15 02:04:08.000000000 +0100
++++ chrome/browser/browser_process_impl.cc 2017-12-24 00:34:24.918627000 +0100
+@@ -170,7 +170,7 @@
#include "chrome/browser/media/webrtc/webrtc_log_uploader.h"
#endif
@@ -9,12 +9,12 @@
#include "chrome/browser/resource_coordinator/tab_manager.h"
#endif
-@@ -796,7 +796,7 @@
+@@ -813,7 +813,7 @@
resource_coordinator::TabManager* BrowserProcessImpl::GetTabManager() {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
+#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
- if (!tab_manager_.get())
- tab_manager_.reset(new resource_coordinator::TabManager());
+ if (!tab_manager_)
+ tab_manager_ = base::MakeUnique<resource_coordinator::TabManager>();
return tab_manager_.get();
diff --git a/www/chromium/files/patch-chrome_browser_browser__resources.grd b/www/chromium/files/patch-chrome_browser_browser__resources.grd
index ddd077c2383b..3d8ac8600f95 100644
--- a/www/chromium/files/patch-chrome_browser_browser__resources.grd
+++ b/www/chromium/files/patch-chrome_browser_browser__resources.grd
@@ -1,6 +1,6 @@
---- chrome/browser/browser_resources.grd.orig 2017-09-05 21:05:12.000000000 +0200
-+++ chrome/browser/browser_resources.grd 2017-09-07 19:30:41.365751000 +0200
-@@ -424,7 +424,7 @@
+--- chrome/browser/browser_resources.grd.orig 2017-12-15 02:04:08.000000000 +0100
++++ chrome/browser/browser_resources.grd 2017-12-24 00:39:53.904855000 +0100
+@@ -370,7 +370,7 @@
<include name="IDR_ABOUT_VOICESEARCH_JS" file="resources\about_voicesearch.js" type="BINDATA" />
<include name="IDR_PLUGIN_DB_JSON" file="resources\plugin_metadata\plugins_chromeos.json" type="BINDATA" />
</if>
@@ -9,10 +9,10 @@
<include name="IDR_PLUGIN_DB_JSON" file="resources\plugin_metadata\plugins_linux.json" type="BINDATA" />
</if>
<if expr="is_android">
-@@ -674,7 +674,7 @@
- <if expr="not is_android and not is_ios">
- <include name="IDR_SSL_ERROR_ASSISTANT_PB" file="${root_gen_dir}/chrome/browser/resources/ssl/ssl_error_assistant/ssl_error_assistant.pb" use_base_dir="false" type="BINDATA" />
+@@ -620,7 +620,7 @@
+ <include name="IDR_WELCOME_WIN10_PIN_SMALL_WEBP" file="resources\welcome\win10\pin-small.webp" type="BINDATA" />
</if>
+ <include name="IDR_SSL_ERROR_ASSISTANT_PB" file="${root_gen_dir}/chrome/browser/resources/ssl/ssl_error_assistant/ssl_error_assistant.pb" use_base_dir="false" type="BINDATA" />
- <if expr="is_android or is_linux">
+ <if expr="is_android or is_posix">
<include name="IDR_SANDBOX_INTERNALS_HTML" file="resources\sandbox_internals\sandbox_internals.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" compress="gzip" />
diff --git a/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc b/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc
index 71825275763a..7b847539e785 100644
--- a/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc
+++ b/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc
@@ -1,15 +1,15 @@
---- chrome/browser/chrome_browser_main.cc.orig 2017-06-05 19:03:02 UTC
-+++ chrome/browser/chrome_browser_main.cc
-@@ -183,7 +183,7 @@
- #include "chrome/browser/feedback/feedback_profile_observer.h"
- #endif // defined(OS_ANDROID)
+--- chrome/browser/chrome_browser_main.cc.orig 2017-12-15 02:04:08.000000000 +0100
++++ chrome/browser/chrome_browser_main.cc 2017-12-24 00:42:50.301023000 +0100
+@@ -193,7 +193,7 @@
+ #include "chrome/browser/offline_pages/offline_page_info_handler.h"
+ #endif
-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+#if (defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS)
#include "chrome/browser/first_run/upgrade_util_linux.h"
#endif // defined(OS_LINUX) && !defined(OS_CHROMEOS)
-@@ -274,7 +274,7 @@
+@@ -287,7 +287,7 @@
#endif
#if defined(OS_WIN) || defined(OS_MACOSX) || \
@@ -18,19 +18,7 @@
#include "chrome/browser/metrics/desktop_session_duration/desktop_session_duration_tracker.h"
#endif
-@@ -477,9 +477,9 @@ void RegisterComponentsForUpdate() {
-
- #if !defined(OS_ANDROID)
- RegisterPepperFlashComponent(cus);
--#if !defined(OS_CHROMEOS)
-+#if !defined(OS_CHROMEOS) && !defined(OS_BSD)
- RegisterWidevineCdmComponent(cus);
--#endif // !defined(OS_CHROMEOS)
-+#endif // !defined(OS_CHROMEOS) && !defined(OS_BSD)
- #endif // !defined(OS_ANDROID)
-
- #if !defined(DISABLE_NACL) && !defined(OS_ANDROID)
-@@ -761,7 +761,7 @@ void ChromeBrowserMainParts::SetupFieldTrials() {
+@@ -719,7 +719,7 @@
field_trial_synchronizer_ = new FieldTrialSynchronizer();
#if defined(OS_WIN) || defined(OS_MACOSX) || \
@@ -39,7 +27,7 @@
metrics::DesktopSessionDurationTracker::Initialize();
#endif
metrics::RendererUptimeTracker::Initialize();
-@@ -1191,11 +1191,11 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() {
+@@ -1122,11 +1122,11 @@
}
#endif // !defined(OS_ANDROID) && !defined(OS_CHROMEOS)
@@ -51,9 +39,9 @@
-#endif // defined(OS_LINUX) || defined(OS_OPENBSD)
+#endif // defined(OS_LINUX) || defined(OS_BSD)
- // Initialize tracking synchronizer system.
- tracking_synchronizer_ = new metrics::TrackingSynchronizer(
-@@ -1374,7 +1374,7 @@ void ChromeBrowserMainParts::PreBrowserStart() {
+ #if defined(OS_MACOSX)
+ // Get the Keychain API to register for distributed notifications on the main
+@@ -1327,7 +1327,7 @@
// Start the tab manager here so that we give the most amount of time for the
// other services to start up before we start adjusting the oom priority.
diff --git a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h
index 9cf932cc03f3..462f310457ca 100644
--- a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h
+++ b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h
@@ -1,6 +1,6 @@
---- chrome/browser/chrome_content_browser_client.h.orig 2017-06-05 19:03:02 UTC
-+++ chrome/browser/chrome_content_browser_client.h
-@@ -271,12 +271,12 @@ class ChromeContentBrowserClient : public content::Con
+--- chrome/browser/chrome_content_browser_client.h.orig 2017-12-15 02:04:08.000000000 +0100
++++ chrome/browser/chrome_content_browser_client.h 2017-12-24 00:50:35.917227000 +0100
+@@ -291,12 +291,12 @@
content::RenderFrameHost* render_frame_host,
blink::WebPageVisibilityState* visibility_state) override;
@@ -9,7 +9,7 @@
void GetAdditionalMappedFilesForChildProcess(
const base::CommandLine& command_line,
int child_process_id,
- content::FileDescriptorInfo* mappings) override;
+ content::PosixFileDescriptorInfo* mappings) override;
-#endif // defined(OS_POSIX) && !defined(OS_MACOSX)
+#endif // defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD)
#if defined(OS_WIN)
diff --git a/www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc b/www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc
index a70b608f7d18..a7d6d5111351 100644
--- a/www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc
+++ b/www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc
@@ -1,15 +1,15 @@
---- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2017-06-05 19:03:02 UTC
-+++ chrome/browser/download/chrome_download_manager_delegate.cc
-@@ -828,7 +828,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDe
+--- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2017-12-15 02:04:08.000000000 +0100
++++ chrome/browser/download/chrome_download_manager_delegate.cc 2017-12-24 00:58:48.284663000 +0100
+@@ -882,7 +882,7 @@
target_info->is_filetype_handled_safely)
DownloadItemModel(item).SetShouldPreferOpeningInBrowser(true);
--#if defined(OS_LINUX) || defined(OS_CHROMEOS)
-+#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD)
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
if (item->GetOriginalMimeType() == "application/x-x509-user-cert")
DownloadItemModel(item).SetShouldPreferOpeningInBrowser(true);
#endif
-@@ -842,7 +842,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDe
+@@ -902,7 +902,7 @@
bool ChromeDownloadManagerDelegate::IsOpenInBrowserPreferreredForFile(
const base::FilePath& path) {
diff --git a/www/chromium/files/patch-chrome_browser_download_download__prefs.cc b/www/chromium/files/patch-chrome_browser_download_download__prefs.cc
index 2a7b8210bb2c..0ca716d8ef5a 100644
--- a/www/chromium/files/patch-chrome_browser_download_download__prefs.cc
+++ b/www/chromium/files/patch-chrome_browser_download_download__prefs.cc
@@ -1,6 +1,6 @@
---- chrome/browser/download/download_prefs.cc.orig 2017-06-05 19:03:02 UTC
-+++ chrome/browser/download/download_prefs.cc
-@@ -56,7 +56,7 @@ namespace {
+--- chrome/browser/download/download_prefs.cc.orig 2017-12-15 02:04:08.000000000 +0100
++++ chrome/browser/download/download_prefs.cc 2017-12-24 01:04:45.230590000 +0100
+@@ -56,7 +56,7 @@
// Consider downloads 'dangerous' if they go to the home directory on Linux and
// to the desktop on any platform.
bool DownloadPathIsDangerous(const base::FilePath& download_path) {
@@ -9,8 +9,8 @@
base::FilePath home_dir = base::GetHomeDir();
if (download_path == home_dir) {
return true;
-@@ -136,7 +136,7 @@ DownloadPrefs::DownloadPrefs(Profile* profile) : profi
- GetDefaultDownloadDirectoryForProfile()));
+@@ -135,7 +135,7 @@
+ GetDefaultDownloadDirectoryForProfile()));
#endif // defined(OS_CHROMEOS)
-#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_MACOSX)
@@ -18,7 +18,7 @@
should_open_pdf_in_system_reader_ =
prefs->GetBoolean(prefs::kOpenPdfDownloadInSystemReader);
#endif
-@@ -213,7 +213,7 @@ void DownloadPrefs::RegisterProfilePrefs(
+@@ -219,7 +219,7 @@
default_download_path);
registry->RegisterFilePathPref(prefs::kSaveFileDefaultDirectory,
default_download_path);
@@ -27,7 +27,7 @@
registry->RegisterBooleanPref(prefs::kOpenPdfDownloadInSystemReader, false);
#endif
}
-@@ -290,7 +290,7 @@ bool DownloadPrefs::IsDownloadPathManaged() const {
+@@ -302,7 +302,7 @@
}
bool DownloadPrefs::IsAutoOpenUsed() const {
@@ -36,16 +36,16 @@
if (ShouldOpenPdfInSystemReader())
return true;
#endif
-@@ -304,7 +304,7 @@ bool DownloadPrefs::IsAutoOpenEnabledBasedOnExtension(
+@@ -316,7 +316,7 @@
return false;
DCHECK(extension[0] == base::FilePath::kExtensionSeparator);
extension.erase(0, 1);
-#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_MACOSX)
+#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD)
- if (extension == FILE_PATH_LITERAL("pdf") && ShouldOpenPdfInSystemReader())
- return true;
- #endif
-@@ -338,7 +338,7 @@ void DownloadPrefs::DisableAutoOpenBasedOnExtension(
+ if (base::FilePath::CompareEqualIgnoreCase(extension,
+ FILE_PATH_LITERAL("pdf")) &&
+ ShouldOpenPdfInSystemReader())
+@@ -353,7 +353,7 @@
SaveAutoOpenState();
}
@@ -54,7 +54,7 @@
void DownloadPrefs::SetShouldOpenPdfInSystemReader(bool should_open) {
if (should_open_pdf_in_system_reader_ == should_open)
return;
-@@ -359,7 +359,7 @@ bool DownloadPrefs::ShouldOpenPdfInSystemReader() cons
+@@ -374,7 +374,7 @@
#endif
void DownloadPrefs::ResetAutoOpen() {
diff --git a/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn b/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn
index ca94b451bfac..4a083e77eb03 100644
--- a/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn
+++ b/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn
@@ -1,24 +1,15 @@
---- chrome/browser/extensions/BUILD.gn.orig 2017-09-05 21:05:12.000000000 +0200
-+++ chrome/browser/extensions/BUILD.gn 2017-09-06 18:09:24.874408000 +0200
-@@ -1095,7 +1095,7 @@
- ]
+--- chrome/browser/extensions/BUILD.gn.orig 2017-12-15 02:04:08.000000000 +0100
++++ chrome/browser/extensions/BUILD.gn 2017-12-30 01:58:47.411895000 +0100
+@@ -1117,6 +1117,12 @@
+ defines += [ "ENABLE_HOTWORDING" ]
}
-- if (is_win || (is_linux && !is_chromeos)) {
-+ if (is_win || ((is_linux || is_bsd) && !is_chromeos)) {
- sources += [
- "api/input_ime/input_ime_api.cc",
- "api/input_ime/input_ime_api.h",
-@@ -1126,6 +1126,12 @@
-
- if (enable_hotwording) {
- defines += [ "ENABLE_HOTWORDING" ]
-+ }
-+
+ if (is_bsd) {
+ sources -= [
+ "api/image_writer_private/removable_storage_provider_linux.cc",
+ ]
- }
-
++ }
++
if (enable_service_discovery) {
+ sources += [
+ "api/mdns/mdns_api.cc",
diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_image__writer__private_image__writer__private__api.cc b/www/chromium/files/patch-chrome_browser_extensions_api_image__writer__private_image__writer__private__api.cc
deleted file mode 100644
index 47e9a49d5fc9..000000000000
--- a/www/chromium/files/patch-chrome_browser_extensions_api_image__writer__private_image__writer__private__api.cc
+++ /dev/null
@@ -1,15 +0,0 @@
---- chrome/browser/extensions/api/image_writer_private/image_writer_private_api.cc.orig 2017-06-05 19:03:02 UTC
-+++ chrome/browser/extensions/api/image_writer_private/image_writer_private_api.cc
-@@ -167,10 +167,12 @@ ImageWriterPrivateListRemovableStorageDevicesFunction:
- }
-
- bool ImageWriterPrivateListRemovableStorageDevicesFunction::RunAsync() {
-+#if !defined(OS_FREEBSD)
- RemovableStorageProvider::GetAllDevices(
- base::Bind(
- &ImageWriterPrivateListRemovableStorageDevicesFunction::OnDeviceListReady,
- this));
-+#endif
- return true;
- }
-
diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_image_writer_private_removable_storage_provider.cc b/www/chromium/files/patch-chrome_browser_extensions_api_image_writer_private_removable_storage_provider.cc
new file mode 100644
index 000000000000..274b1bcda1d4
--- /dev/null
+++ b/www/chromium/files/patch-chrome_browser_extensions_api_image_writer_private_removable_storage_provider.cc
@@ -0,0 +1,20 @@
+--- chrome/browser/extensions/api/image_writer_private/removable_storage_provider.cc.orig 2018-01-03 17:00:05.332673000 +0100
++++ chrome/browser/extensions/api/image_writer_private/removable_storage_provider.cc 2018-01-03 17:01:00.459066000 +0100
+@@ -20,6 +20,7 @@
+
+ void RemovableStorageProvider::GetAllDevices(DeviceListReadyCallback callback) {
+ DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
++#if !defined(OS_BSD)
+ if (g_test_device_list.Get().get() != nullptr) {
+ base::ThreadTaskRunnerHandle::Get()->PostTask(
+ FROM_HERE,
+@@ -33,6 +34,9 @@
+ base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN},
+ base::BindOnce(&RemovableStorageProvider::PopulateDeviceList),
+ std::move(callback));
++#else
++ NOTIMPLEMENTED();
++#endif
+ }
+
+ // static
diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_messaging_message__service.cc b/www/chromium/files/patch-chrome_browser_extensions_api_messaging_message__service.cc
deleted file mode 100644
index 88c496d7db78..000000000000
--- a/www/chromium/files/patch-chrome_browser_extensions_api_messaging_message__service.cc
+++ /dev/null
@@ -1,35 +0,0 @@
---- chrome/browser/extensions/api/messaging/message_service.cc.orig 2017-06-05 19:03:02 UTC
-+++ chrome/browser/extensions/api/messaging/message_service.cc
-@@ -105,7 +105,7 @@ MessageService::PolicyPermission MessageService::IsNat
-
- const char kReceivingEndDoesntExistError[] =
- "Could not establish connection. Receiving end does not exist.";
--#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 kMissingPermissionError[] =
- "Access to native messaging requires nativeMessaging permission.";
- const char kProhibitedByPoliciesError[] =
-@@ -383,7 +383,7 @@ void MessageService::OpenChannelToNativeApp(
- if (!source)
- 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 =
-@@ -446,12 +446,12 @@ void MessageService::OpenChannelToNativeApp(
- channel->opener->IncrementLazyKeepaliveCount();
-
- AddChannel(std::move(channel), receiver_port_id);
--#else // !(defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX))
-+#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);
--#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,
diff --git a/www/chromium/files/patch-chrome_browser_flag__descriptions.cc b/www/chromium/files/patch-chrome_browser_flag__descriptions.cc
index c1e53832a60d..7d0d2e62f76c 100644
--- a/www/chromium/files/patch-chrome_browser_flag__descriptions.cc
+++ b/www/chromium/files/patch-chrome_browser_flag__descriptions.cc
@@ -1,28 +1,11 @@
---- chrome/browser/flag_descriptions.cc.orig 2017-09-05 21:05:13.000000000 +0200
-+++ chrome/browser/flag_descriptions.cc 2017-09-10 01:52:30.845374000 +0200
-@@ -2155,14 +2155,14 @@
+--- chrome/browser/flag_descriptions.cc.orig 2017-12-15 02:04:09.000000000 +0100
++++ chrome/browser/flag_descriptions.cc 2017-12-24 01:21:43.685723000 +0100
+@@ -2643,7 +2643,7 @@
- #endif // defined(TOOLKIT_VIEWS) || defined(OS_ANDROID)
+ // Random platform combinations -----------------------------------------------
-#if defined(OS_WIN) || defined(OS_LINUX)
+#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD)
const char kEnableInputImeApiName[] = "Enable Input IME API";
-
const char kEnableInputImeApiDescription[] =
- "Enable the use of chrome.input.ime API.";
-
--#endif // defined(OS_WIN) || defined(OS_LINUX)
-+#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD)
-
- #if defined(OS_CHROMEOS)
-
-@@ -2414,7 +2414,7 @@
- #endif // defined(OS_WIN)
-
- #if defined(OS_CHROMEOS) || defined(OS_LINUX) || defined(OS_MACOSX) || \
-- defined(OS_WIN)
-+ defined(OS_WIN) || defined(OS_BSD)
-
- const char kOmniboxEntitySuggestionsName[] = "Omnibox entity suggestions";
- const char kOmniboxEntitySuggestionsDescription[] =
diff --git a/www/chromium/files/patch-chrome_browser_interstitials_chrome__controller__client.cc b/www/chromium/files/patch-chrome_browser_interstitials_chrome__controller__client.cc
index a2aca14337cb..69430d9675d5 100644
--- a/www/chromium/files/patch-chrome_browser_interstitials_chrome__controller__client.cc
+++ b/www/chromium/files/patch-chrome_browser_interstitials_chrome__controller__client.cc
@@ -1,6 +1,6 @@
---- chrome/browser/interstitials/chrome_controller_client.cc.orig 2017-06-05 19:03:02 UTC
-+++ chrome/browser/interstitials/chrome_controller_client.cc
-@@ -46,7 +46,7 @@ void LaunchDateAndTimeSettingsOnFileThread() {
+--- chrome/browser/interstitials/chrome_controller_client.cc.orig 2017-12-15 02:04:09.000000000 +0100
++++ chrome/browser/interstitials/chrome_controller_client.cc 2017-12-24 01:30:40.740189000 +0100
+@@ -46,7 +46,7 @@
#if defined(OS_ANDROID)
chrome::android::OpenDateAndTimeSettings();
@@ -9,12 +9,12 @@
struct ClockCommand {
const char* const pathname;
const char* const argument;
-@@ -131,7 +131,7 @@ ChromeControllerClient::~ChromeControllerClient() {}
+@@ -130,7 +130,7 @@
bool ChromeControllerClient::CanLaunchDateAndTimeSettings() {
- #if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_LINUX) || \
-- defined(OS_MACOSX) || defined(OS_WIN)
-+ defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_BSD)
+ #if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_MACOSX) || \
+- defined(OS_WIN)
++ defined(OS_WIN) || defined(OS_BSD)
return true;
#else
return false;
diff --git a/www/chromium/files/patch-chrome_browser_net_async__dns__field__trial.cc b/www/chromium/files/patch-chrome_browser_net_async__dns__field__trial.cc
deleted file mode 100644
index 28e794fa6eb1..000000000000
--- a/www/chromium/files/patch-chrome_browser_net_async__dns__field__trial.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- chrome/browser/net/async_dns_field_trial.cc.orig 2017-06-05 19:03:02 UTC
-+++ chrome/browser/net/async_dns_field_trial.cc
-@@ -61,7 +61,7 @@ void HistogramPrefSource(PrefSource source, bool enabl
- } // namespace
-
- bool ConfigureAsyncDnsFieldTrial() {
--#if defined(OS_CHROMEOS) || defined(OS_MACOSX)
-+#if defined(OS_CHROMEOS) || defined(OS_MACOSX) || defined(OS_BSD)
- const bool kDefault = true;
- #else
- const bool kDefault = false;
diff --git a/www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc b/www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc
index 7dcd4741d5ad..760bc7030d88 100644
--- a/www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc
+++ b/www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc
@@ -1,5 +1,5 @@
---- chrome/browser/password_manager/chrome_password_manager_client.cc.orig 2017-09-05 21:05:13.000000000 +0200
-+++ chrome/browser/password_manager/chrome_password_manager_client.cc 2017-09-06 18:27:33.975903000 +0200
+--- chrome/browser/password_manager/chrome_password_manager_client.cc.orig 2017-12-15 02:04:09.000000000 +0100
++++ chrome/browser/password_manager/chrome_password_manager_client.cc 2017-12-24 01:39:48.763209000 +0100
@@ -67,7 +67,11 @@
#include "google_apis/gaia/gaia_urls.h"
#include "net/base/url_util.h"
@@ -9,6 +9,6 @@
+#else
#include "third_party/re2/src/re2/re2.h"
+#endif
+ #include "url/url_constants.h"
#if defined(SAFE_BROWSING_DB_LOCAL)
- #include "chrome/browser/browser_process.h"
diff --git a/www/chromium/files/patch-chrome_browser_prefs_browser_prefs.cc b/www/chromium/files/patch-chrome_browser_prefs_browser_prefs.cc
deleted file mode 100644
index ff5a3d078cb0..000000000000
--- a/www/chromium/files/patch-chrome_browser_prefs_browser_prefs.cc
+++ /dev/null
@@ -1,20 +0,0 @@
---- chrome/browser/prefs/browser_prefs.cc.orig 2017-09-08 16:00:21.925956000 +0200
-+++ chrome/browser/prefs/browser_prefs.cc 2017-09-08 16:04:23.999468000 +0200
-@@ -262,7 +262,7 @@
- #include "chrome/browser/ui/desktop_ios_promotion/desktop_ios_promotion_util.h"
- #endif
-
--#if !defined(OS_ANDROID) && !defined(OS_CHROMEOS) && !defined(OS_MACOSX)
-+#if !defined(OS_ANDROID) && !defined(OS_CHROMEOS) && !defined(OS_MACOSX) && !defined(OS_BSD)
- #include "chrome/browser/feature_engagement_tracker/new_tab/new_tab_tracker.h"
- #endif
-
-@@ -586,7 +586,7 @@
- default_apps::RegisterProfilePrefs(registry);
- #endif
-
--#if !defined(OS_ANDROID) && !defined(OS_CHROMEOS) && !defined(OS_MACOSX)
-+#if !defined(OS_ANDROID) && !defined(OS_CHROMEOS) && !defined(OS_MACOSX) && !defined(OS_BSD)
- feature_engagement_tracker::NewTabTracker::RegisterProfilePrefs(registry);
- #endif
-
diff --git a/www/chromium/files/patch-chrome_browser_profiles_chrome_browser_main_extra_parts_profiles.cc b/www/chromium/files/patch-chrome_browser_profiles_chrome_browser_main_extra_parts_profiles.cc
deleted file mode 100644
index cdafeaf29c0b..000000000000
--- a/www/chromium/files/patch-chrome_browser_profiles_chrome_browser_main_extra_parts_profiles.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2017-09-08 15:53:03.193381000 +0200
-+++ chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc 2017-09-08 15:54:40.433791000 +0200
-@@ -290,7 +290,7 @@
- MediaGalleriesPreferencesFactory::GetInstance();
- NTPResourceCacheFactory::GetInstance();
- #endif
--#if !defined(OS_ANDROID) && !defined(OS_CHROMEOS) && !defined(OS_MACOSX)
-+#if !defined(OS_ANDROID) && !defined(OS_CHROMEOS) && !defined(OS_MACOSX) && !defined(OS_BSD)
- feature_engagement_tracker::NewTabTrackerFactory::GetInstance();
- #endif
- ContentSuggestionsServiceFactory::GetInstance();
diff --git a/www/chromium/files/patch-chrome_browser_profiles_profile__impl__io__data.cc b/www/chromium/files/patch-chrome_browser_profiles_profile__impl__io__data.cc
deleted file mode 100644
index eaee8d6ff23d..000000000000
--- a/www/chromium/files/patch-chrome_browser_profiles_profile__impl__io__data.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- chrome/browser/profiles/profile_impl_io_data.cc.orig 2017-06-05 19:03:02 UTC
-+++ chrome/browser/profiles/profile_impl_io_data.cc
-@@ -100,7 +100,7 @@ net::BackendType ChooseCacheBackendType() {
- }
- #endif // #if !defined(OS_ANDROID)
-
--#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_CHROMEOS)
-+#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD)
- return net::CACHE_BACKEND_SIMPLE;
- #else
- return net::CACHE_BACKEND_BLOCKFILE;
diff --git a/www/chromium/files/patch-chrome_browser_resources_safe__browsing_BUILD.gn b/www/chromium/files/patch-chrome_browser_resources_safe__browsing_BUILD.gn
deleted file mode 100644
index bfe4f2cdde28..000000000000
--- a/www/chromium/files/patch-chrome_browser_resources_safe__browsing_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- chrome/browser/resources/safe_browsing/BUILD.gn.orig 2017-04-19 19:06:30 UTC
-+++ chrome/browser/resources/safe_browsing/BUILD.gn
-@@ -29,6 +29,8 @@ action("make_file_types_protobuf") {
- target_arch = "mac"
- } else if (is_linux) {
- target_arch = "linux"
-+ } else if (is_bsd) {
-+ target_arch = "bsd"
- } else {
- # This will cause the script to fail.
- target_arch = "unknown_target_arch"
diff --git a/www/chromium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__page.html b/www/chromium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__page.html
index cb1242637eb1..0c5236895e9d 100644
--- a/www/chromium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__page.html
+++ b/www/chromium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__page.html
@@ -1,29 +1,29 @@
---- chrome/browser/resources/settings/appearance_page/appearance_page.html.orig 2017-07-25 21:04:51.000000000 +0200
-+++ chrome/browser/resources/settings/appearance_page/appearance_page.html 2017-08-01 23:52:53.177262000 +0200
-@@ -73,7 +73,7 @@
- actionable aria-label="$i18n{themes}"
- aria-describedby="themesSecondary"></button>
- </a>
+--- chrome/browser/resources/settings/appearance_page/appearance_page.html.orig 2017-12-15 02:04:10.000000000 +0100
++++ chrome/browser/resources/settings/appearance_page/appearance_page.html 2017-12-24 02:04:05.313610000 +0100
+@@ -77,7 +77,7 @@
+ hidden="[[!pageVisibility.setTheme]]"
+ label="$i18n{themes}" sub-label="[[themeSublabel_]]"
+ on-tap="openThemeUrl_"></button>
-<if expr="not is_linux or chromeos">
+<if expr="not is_posix or chromeos">
<template is="dom-if" if="[[prefs.extensions.theme.id.value]]">
<div class="separator"></div>
<paper-button id="useDefault" on-tap="onUseDefaultTap_"
-@@ -82,7 +82,7 @@
+@@ -86,7 +86,7 @@
</paper-button>
</template>
</if>
-<if expr="is_linux and not chromeos">
+<if expr="is_posix and not chromeos">
- <div class="settings-row" hidden="[[!showThemesSecondary_(
+ <div class="settings-row continuation"
+ hidden="[[!showThemesSecondary_(
prefs.extensions.theme.id.value, useSystemTheme_)]]"
- id="themesSecondaryActions">
-@@ -152,7 +152,7 @@
- </settings-toggle-button>
- </div>
- <div class$="settings-box [[getFirst_(pageVisibility.bookmarksBar)]]">
+@@ -151,7 +151,7 @@
+ pref="{{prefs.bookmark_bar.show_on_all_tabs}}"
+ label="$i18n{showBookmarksBar}">
+ </settings-toggle-button>
-<if expr="is_linux and not chromeos">
+<if expr="is_posix and not chromeos">
- <settings-toggle-button class="start"
- pref="{{prefs.browser.custom_chrome_frame}}"
- label="$i18n{showWindowDecorations}"
+ <settings-toggle-button
+ class$="[[getFirst_(pageVisibility.bookmarksBar)]]"
+ pref="{{prefs.browser.custom_chrome_frame}}"
diff --git a/www/chromium/files/patch-chrome_browser_sync_chrome__sync__client.cc b/www/chromium/files/patch-chrome_browser_sync_chrome__sync__client.cc
index e519c941b718..1eaf4b8adca0 100644
--- a/www/chromium/files/patch-chrome_browser_sync_chrome__sync__client.cc
+++ b/www/chromium/files/patch-chrome_browser_sync_chrome__sync__client.cc
@@ -1,11 +1,20 @@
---- chrome/browser/sync/chrome_sync_client.cc.orig 2017-06-05 19:03:03 UTC
-+++ chrome/browser/sync/chrome_sync_client.cc
-@@ -653,7 +653,7 @@ void ChromeSyncClient::RegisterDesktopDataTypes(
+--- chrome/browser/sync/chrome_sync_client.cc.orig 2017-12-15 02:04:10.000000000 +0100
++++ chrome/browser/sync/chrome_sync_client.cc 2017-12-24 02:09:05.300500000 +0100
+@@ -668,7 +668,7 @@
}
#endif // BUILDFLAG(ENABLE_APP_LIST)
--#if defined(OS_LINUX) || defined(OS_WIN) || defined(OS_CHROMEOS)
-+#if defined(OS_LINUX) || defined(OS_WIN) || defined(OS_CHROMEOS) || defined(OS_BSD)
+-#if defined(OS_LINUX) || defined(OS_WIN)
++#if defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD)
// Dictionary sync is enabled by default.
if (!disabled_types.Has(syncer::DICTIONARY)) {
sync_service->RegisterDataTypeController(
+@@ -676,7 +676,7 @@
+ syncer::DICTIONARY, error_callback, this, syncer::GROUP_UI,
+ BrowserThread::GetTaskRunnerForThread(BrowserThread::UI)));
+ }
+-#endif // defined(OS_LINUX) || defined(OS_WIN)
++#endif // defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD)
+
+ #if BUILDFLAG(ENABLE_SUPERVISED_USERS)
+ sync_service->RegisterDataTypeController(
diff --git a/www/chromium/files/patch-chrome_browser_task__manager_sampling_task__group.cc b/www/chromium/files/patch-chrome_browser_task__manager_sampling_task__group.cc
index c0fa17d035af..5a815f677766 100644
--- a/www/chromium/files/patch-chrome_browser_task__manager_sampling_task__group.cc
+++ b/www/chromium/files/patch-chrome_browser_task__manager_sampling_task__group.cc
@@ -1,6 +1,6 @@
---- chrome/browser/task_manager/sampling/task_group.cc.orig 2017-06-05 19:03:03 UTC
-+++ chrome/browser/task_manager/sampling/task_group.cc
-@@ -28,9 +28,9 @@ const int kBackgroundRefreshTypesMask =
+--- chrome/browser/task_manager/sampling/task_group.cc.orig 2017-12-15 02:04:10.000000000 +0100
++++ chrome/browser/task_manager/sampling/task_group.cc 2017-12-24 02:18:09.634446000 +0100
+@@ -28,9 +28,9 @@
#if defined(OS_WIN)
REFRESH_TYPE_START_TIME | REFRESH_TYPE_CPU_TIME |
#endif // defined(OS_WIN)
@@ -9,12 +9,12 @@
REFRESH_TYPE_FD_COUNT |
-#endif // defined(OS_LINUX)
+#endif // defined(OS_LINUX) || defined(OS_BSD)
- #if !defined(DISABLE_NACL)
+ #if BUILDFLAG(ENABLE_NACL)
REFRESH_TYPE_NACL |
- #endif // !defined(DISABLE_NACL)
-@@ -102,9 +102,9 @@ TaskGroup::TaskGroup(
+ #endif // BUILDFLAG(ENABLE_NACL)
+@@ -103,9 +103,9 @@
nacl_debug_stub_port_(nacl::kGdbDebugStubPortUnknown),
- #endif // !defined(DISABLE_NACL)
+ #endif // BUILDFLAG(ENABLE_NACL)
idle_wakeups_per_second_(-1),
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
@@ -24,20 +24,20 @@
gpu_memory_has_duplicates_(false),
is_backgrounded_(false),
weak_ptr_factory_(this) {
-@@ -117,10 +117,10 @@ TaskGroup::TaskGroup(
- weak_ptr_factory_.GetWeakPtr()),
- base::Bind(&TaskGroup::OnIdleWakeupsRefreshDone,
- weak_ptr_factory_.GetWeakPtr()),
+@@ -118,10 +118,10 @@
+ weak_ptr_factory_.GetWeakPtr()),
+ base::Bind(&TaskGroup::OnIdleWakeupsRefreshDone,
+ weak_ptr_factory_.GetWeakPtr()),
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- base::Bind(&TaskGroup::OnOpenFdCountRefreshDone,
- weak_ptr_factory_.GetWeakPtr()),
+ base::Bind(&TaskGroup::OnOpenFdCountRefreshDone,
+ weak_ptr_factory_.GetWeakPtr()),
-#endif // defined(OS_LINUX)
+#endif // defined(OS_LINUX) || defined(OS_BSD)
- base::Bind(&TaskGroup::OnProcessPriorityDone,
- weak_ptr_factory_.GetWeakPtr())));
- worker_thread_sampler_.swap(sampler);
-@@ -333,14 +333,14 @@ void TaskGroup::OnIdleWakeupsRefreshDone(int idle_wake
+ base::Bind(&TaskGroup::OnProcessPriorityDone,
+ weak_ptr_factory_.GetWeakPtr()));
+
+@@ -338,14 +338,14 @@
OnBackgroundRefreshTypeFinished(REFRESH_TYPE_IDLE_WAKEUPS);
}
diff --git a/www/chromium/files/patch-chrome_browser_ui_BUILD.gn b/www/chromium/files/patch-chrome_browser_ui_BUILD.gn
deleted file mode 100644
index e6fe0f7fd049..000000000000
--- a/www/chromium/files/patch-chrome_browser_ui_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- chrome/browser/ui/BUILD.gn.orig 2017-06-05 19:03:03 UTC
-+++ chrome/browser/ui/BUILD.gn
-@@ -3170,7 +3170,7 @@ split_static_library("ui") {
- ]
- }
- }
-- if (is_linux) { # Both desktop Linux and ChromeOS.
-+ if (is_linux || is_bsd) { # Both desktop Linux and ChromeOS.
- sources += [
- "certificate_dialogs.cc",
- "certificate_dialogs.h",
diff --git a/www/chromium/files/patch-chrome_browser_ui_libgtkui_BUILD.gn b/www/chromium/files/patch-chrome_browser_ui_libgtkui_BUILD.gn
deleted file mode 100644
index c43e4a107042..000000000000
--- a/www/chromium/files/patch-chrome_browser_ui_libgtkui_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- chrome/browser/ui/libgtkui/BUILD.gn.orig 2017-04-19 19:06:30 UTC
-+++ chrome/browser/ui/libgtkui/BUILD.gn
-@@ -2,7 +2,7 @@
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
-
--assert(is_linux, "This file should only be referenced on Linux")
-+assert(is_linux || is_bsd, "This file should only be referenced on Linux")
-
- import("//build/config/features.gni")
- import("//build/config/linux/gtk/gtk.gni")
diff --git a/www/chromium/files/patch-chrome_browser_ui_libgtkui_nav_button_provider_gtk3.h b/www/chromium/files/patch-chrome_browser_ui_libgtkui_nav_button_provider_gtk3.h
new file mode 100644
index 000000000000..6da3546262c7
--- /dev/null
+++ b/www/chromium/files/patch-chrome_browser_ui_libgtkui_nav_button_provider_gtk3.h
@@ -0,0 +1,11 @@
+--- chrome/browser/ui/libgtkui/nav_button_provider_gtk3.h.orig 2018-02-11 02:34:07.340548000 +0100
++++ chrome/browser/ui/libgtkui/nav_button_provider_gtk3.h 2018-02-11 02:32:04.747163000 +0100
+@@ -31,7 +31,7 @@
+
+ private:
+ std::map<chrome::FrameButtonDisplayType,
+- gfx::ImageSkia[views::Button::STATE_COUNT]>
++ std::array<gfx::ImageSkia, views::Button::STATE_COUNT>>
+ button_images_;
+ std::map<chrome::FrameButtonDisplayType, gfx::Insets> button_margins_;
+ gfx::Insets top_area_spacing_;
diff --git a/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__drag__controller.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__drag__controller.cc
index 3fa0bb356b4c..dea233ae2fbd 100644
--- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__drag__controller.cc
+++ b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__drag__controller.cc
@@ -1,24 +1,24 @@
---- chrome/browser/ui/views/tabs/tab_drag_controller.cc.orig 2017-06-05 19:03:03 UTC
-+++ chrome/browser/ui/views/tabs/tab_drag_controller.cc
-@@ -249,7 +249,7 @@ void TabDragController::Init(
+--- chrome/browser/ui/views/tabs/tab_drag_controller.cc.orig 2017-12-15 02:04:11.000000000 +0100
++++ chrome/browser/ui/views/tabs/tab_drag_controller.cc 2017-12-24 02:45:43.317955000 +0100
+@@ -261,7 +261,7 @@
// synchronous on desktop Linux, so use that.
- // - Ash
+ // - Chrome OS
// Releasing capture on Ash cancels gestures so avoid it.
--#if defined(OS_LINUX) || defined(USE_ASH)
-+#if defined(OS_LINUX) || defined(OS_BSD) || defined(USE_ASH)
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
can_release_capture_ = false;
#endif
start_point_in_screen_ = gfx::Point(source_tab_offset, mouse_offset.y());
-@@ -594,7 +594,7 @@ TabDragController::DragBrowserToNewTabStrip(
+@@ -599,7 +599,7 @@
else
target_tabstrip->GetWidget()->SetCapture(attached_tabstrip_);
--#if !defined(OS_LINUX) || defined(OS_CHROMEOS)
-+#if (!defined(OS_LINUX) && !defined(OS_BSD)) || defined(OS_CHROMEOS)
+-#if !defined(OS_LINUX)
++#if !defined(OS_LINUX) || defined(OS_BSD)
// EndMoveLoop is going to snap the window back to its original location.
// Hide it so users don't see this. Hiding a window in Linux aura causes
// it to lose capture so skip it.
-@@ -1784,7 +1784,7 @@ TabDragController::Liveness TabDragController::GetLoca
+@@ -1792,7 +1792,7 @@
if (dragged_window)
exclude.insert(dragged_window);
}
diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc b/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc
index 1d6b2cb0f24c..7faeea7873e8 100644
--- a/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc
+++ b/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc
@@ -1,11 +1,20 @@
---- chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc.orig 2017-06-05 19:03:03 UTC
-+++ chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
-@@ -292,13 +292,13 @@ bool IsAboutUI(const GURL& url) {
+--- chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc.orig 2017-12-15 02:04:11.000000000 +0100
++++ chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc 2017-12-24 02:53:23.421702000 +0100
+@@ -179,7 +179,7 @@
+ #include "chrome/browser/ui/webui/welcome_win10_ui.h"
+ #endif
+
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ #include "chrome/browser/ui/webui/sandbox_internals_ui.h"
+ #endif
+
+@@ -284,13 +284,13 @@
#if !defined(OS_ANDROID)
|| url.host_piece() == chrome::kChromeUITermsHost
#endif
-#if defined(OS_LINUX) || defined(OS_OPENBSD)
-+#if defined(OS_LINUX) || defined(OS_BSD)
++#if defined(OS_LINUX)
|| url.host_piece() == chrome::kChromeUILinuxProxyConfigHost
#endif
#if defined(OS_CHROMEOS)
@@ -16,12 +25,21 @@
|| url.host_piece() == chrome::kChromeUIDiscardsHost
#endif
); // NOLINT
-@@ -568,7 +568,7 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* we
+@@ -532,7 +532,7 @@
if (url.host_piece() == chrome::kChromeUINaClHost)
return &NewWebUI<NaClUI>;
#endif
-#if (defined(OS_LINUX) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA)
-+#if ((defined(OS_LINUX) || defined(OS_BSD)) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA)
- if (url.host_piece() == chrome::kChromeUITabModalConfirmDialogHost) {
++#if (defined(OS_LINUX) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA) || defined(OS_BSD)
+ if (url.host_piece() == chrome::kChromeUITabModalConfirmDialogHost)
return &NewWebUI<ConstrainedWebDialogUI>;
+ #endif
+@@ -593,7 +593,7 @@
+ return &NewWebUI<CastUI>;
+ }
+ #endif
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ if (url.host_piece() == chrome::kChromeUISandboxHost) {
+ return &NewWebUI<SandboxInternalsUI>;
}
diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_options_browser__options__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_options_browser__options__handler.cc
deleted file mode 100644
index fd21310bb4a4..000000000000
--- a/www/chromium/files/patch-chrome_browser_ui_webui_options_browser__options__handler.cc
+++ /dev/null
@@ -1,45 +0,0 @@
---- chrome/browser/ui/webui/options/browser_options_handler.cc.orig 2017-06-05 19:03:03 UTC
-+++ chrome/browser/ui/webui/options/browser_options_handler.cc
-@@ -592,13 +592,13 @@ void BrowserOptionsHandler::GetLocalizedValues(base::D
- {"syncButtonTextStart", IDS_SYNC_SETUP_BUTTON_LABEL},
- #endif // defined(OS_CHROMEOS)
-
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if defined(OS_POSIX) && !defined(OS_CHROMEOS)
- {"showWindowDecorations", IDS_SHOW_WINDOW_DECORATIONS},
- {"themesNativeButton", IDS_THEMES_GTK_BUTTON},
- {"themesSetClassic", IDS_THEMES_SET_CLASSIC},
- #else
- {"themes", IDS_THEMES_GROUP_NAME},
--#endif // defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#endif // defined(OS_POSIX) && !defined(OS_CHROMEOS)
-
- #if defined(OS_CHROMEOS)
- {"setWallpaper", IDS_SET_WALLPAPER_BUTTON},
-@@ -845,7 +845,7 @@ void BrowserOptionsHandler::RegisterMessages() {
- "requestProfilesInfo",
- base::Bind(&BrowserOptionsHandler::HandleRequestProfilesInfo,
- base::Unretained(this)));
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if defined(OS_POSIX) && !defined(OS_CHROMEOS)
- web_ui()->RegisterMessageCallback(
- "themesSetNative",
- base::Bind(&BrowserOptionsHandler::ThemesSetNative,
-@@ -1505,7 +1505,7 @@ void BrowserOptionsHandler::ObserveThemeChanged() {
- ThemeService* theme_service = ThemeServiceFactory::GetForProfile(profile);
- bool is_system_theme = false;
-
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if defined(OS_POSIX) && !defined(OS_CHROMEOS)
- bool profile_is_supervised = profile->IsSupervised();
- is_system_theme = theme_service->UsingSystemTheme();
- base::Value native_theme_enabled(!is_system_theme && !profile_is_supervised);
-@@ -1526,7 +1526,7 @@ void BrowserOptionsHandler::ThemesReset(const base::Li
- ThemeServiceFactory::GetForProfile(profile)->UseDefaultTheme();
- }
-
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if defined(OS_POSIX) && !defined(OS_CHROMEOS)
- void BrowserOptionsHandler::ThemesSetNative(const base::ListValue* args) {
- base::RecordAction(UserMetricsAction("Options_GtkThemeSet"));
- Profile* profile = Profile::FromWebUI(web_ui());
diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_options_browser__options__handler.h b/www/chromium/files/patch-chrome_browser_ui_webui_options_browser__options__handler.h
deleted file mode 100644
index 41e75f795832..000000000000
--- a/www/chromium/files/patch-chrome_browser_ui_webui_options_browser__options__handler.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- chrome/browser/ui/webui/options/browser_options_handler.h.orig 2017-06-05 19:03:03 UTC
-+++ chrome/browser/ui/webui/options/browser_options_handler.h
-@@ -215,7 +215,7 @@ class BrowserOptionsHandler
-
- void ObserveThemeChanged();
- void ThemesReset(const base::ListValue* args);
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if defined(OS_POSIX) && !defined(OS_CHROMEOS)
- void ThemesSetNative(const base::ListValue* args);
- #endif
-
diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc
index eb3817ae7286..fdddd8abb41f 100644
--- a/www/chromium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc
+++ b/www/chromium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc
@@ -1,15 +1,15 @@
---- chrome/browser/ui/webui/settings/appearance_handler.cc.orig 2017-06-05 19:03:03 UTC
-+++ chrome/browser/ui/webui/settings/appearance_handler.cc
-@@ -32,7 +32,7 @@ void AppearanceHandler::RegisterMessages() {
+--- chrome/browser/ui/webui/settings/appearance_handler.cc.orig 2017-12-24 02:59:37.041407000 +0100
++++ chrome/browser/ui/webui/settings/appearance_handler.cc 2017-12-24 03:00:20.310448000 +0100
+@@ -33,7 +33,7 @@
"useDefaultTheme",
base::Bind(&AppearanceHandler::HandleUseDefaultTheme,
base::Unretained(this)));
-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS)
++#if (defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS)
web_ui()->RegisterMessageCallback(
"useSystemTheme",
base::Bind(&AppearanceHandler::HandleUseSystemTheme,
-@@ -50,7 +50,7 @@ void AppearanceHandler::HandleUseDefaultTheme(const ba
+@@ -61,7 +61,7 @@
ThemeServiceFactory::GetForProfile(profile_)->UseDefaultTheme();
}
diff --git a/www/chromium/files/patch-chrome_common_BUILD.gn b/www/chromium/files/patch-chrome_common_BUILD.gn
index b971961a01a1..39edb2bf620e 100644
--- a/www/chromium/files/patch-chrome_common_BUILD.gn
+++ b/www/chromium/files/patch-chrome_common_BUILD.gn
@@ -1,14 +1,11 @@
---- chrome/common/BUILD.gn.orig 2017-04-19 19:06:30 UTC
-+++ chrome/common/BUILD.gn
-@@ -240,6 +240,13 @@ static_library("common") {
+--- chrome/common/BUILD.gn.orig 2017-12-15 02:04:11.000000000 +0100
++++ chrome/common/BUILD.gn 2017-12-30 02:27:17.872477000 +0100
+@@ -287,6 +287,10 @@
public_deps += [ "//ppapi/shared_impl" ]
}
+ if (is_bsd) {
-+ sources -= [
-+ "component_flash_hint_file_linux.cc",
-+ "component_flash_hint_file_linux.h"
-+ ]
++ sources -= [ "component_flash_hint_file_linux.cc" ]
+ }
+
if (enable_extensions) {
diff --git a/www/chromium/files/patch-chrome_common_chrome__switches.cc b/www/chromium/files/patch-chrome_common_chrome__switches.cc
index b294b2fae61f..23af8f3093ea 100644
--- a/www/chromium/files/patch-chrome_common_chrome__switches.cc
+++ b/www/chromium/files/patch-chrome_common_chrome__switches.cc
@@ -1,6 +1,6 @@
---- chrome/common/chrome_switches.cc.orig 2017-08-03 00:05:07.000000000 +0200
-+++ chrome/common/chrome_switches.cc 2017-08-10 13:31:37.698271000 +0200
-@@ -1150,13 +1150,13 @@
+--- chrome/common/chrome_switches.cc.orig 2017-12-15 02:04:11.000000000 +0100
++++ chrome/common/chrome_switches.cc 2017-12-24 03:10:42.019760000 +0100
+@@ -999,12 +999,12 @@
const char kEnableWaylandServer[] = "enable-wayland-server";
#endif
@@ -10,9 +10,8 @@
extern const char kEnableInputImeAPI[] = "enable-input-ime-api";
#endif
- #if defined(OS_CHROMEOS) || defined(OS_LINUX) || defined(OS_MACOSX) || \
-- defined(OS_WIN)
-+ defined(OS_WIN) || defined(OS_BSD)
+-#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[] = "enable-new-app-menu-icon";
#endif
diff --git a/www/chromium/files/patch-chrome_common_chrome__switches.h b/www/chromium/files/patch-chrome_common_chrome__switches.h
index 99282f921a49..961a639ccdeb 100644
--- a/www/chromium/files/patch-chrome_common_chrome__switches.h
+++ b/www/chromium/files/patch-chrome_common_chrome__switches.h
@@ -1,6 +1,6 @@
---- chrome/common/chrome_switches.h.orig 2017-08-03 00:05:07.000000000 +0200
-+++ chrome/common/chrome_switches.h 2017-08-10 13:31:51.802319000 +0200
-@@ -349,13 +349,13 @@
+--- chrome/common/chrome_switches.h.orig 2017-12-24 03:11:35.192869000 +0100
++++ chrome/common/chrome_switches.h 2017-12-24 03:12:02.641567000 +0100
+@@ -313,12 +313,12 @@
extern const char kEnableWaylandServer[];
#endif
@@ -10,9 +10,8 @@
extern const char kEnableInputImeAPI[];
#endif
- #if defined(OS_CHROMEOS) || defined(OS_LINUX) || defined(OS_MACOSX) || \
-- defined(OS_WIN)
-+ defined(OS_WIN) || defined(OS_BSD)
+-#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[];
#endif
diff --git a/www/chromium/files/patch-chrome_common_url__constants.h b/www/chromium/files/patch-chrome_common_url__constants.h
index 400e678bdbc6..7b71a1a9f147 100644
--- a/www/chromium/files/patch-chrome_common_url__constants.h
+++ b/www/chromium/files/patch-chrome_common_url__constants.h
@@ -1,6 +1,6 @@
---- chrome/common/url_constants.h.orig 2017-09-05 21:05:14.000000000 +0200
-+++ chrome/common/url_constants.h 2017-09-07 14:48:59.551106000 +0200
-@@ -133,7 +133,7 @@
+--- chrome/common/url_constants.h.orig 2017-12-15 02:04:12.000000000 +0100
++++ chrome/common/url_constants.h 2017-12-31 04:24:38.490568000 +0100
+@@ -136,7 +136,7 @@
extern const char kChromeUIMetroFlowURL[];
#endif
@@ -9,7 +9,7 @@
extern const char kChromeUITabModalConfirmDialogURL[];
#endif
-@@ -150,7 +150,7 @@
+@@ -149,7 +149,7 @@
extern const char kChromeUICastURL[];
#endif
@@ -18,16 +18,25 @@
extern const char kChromeUIDiscardsURL[];
#endif
-@@ -265,7 +265,7 @@
- extern const char kChromeUISigninDiceInternalsHost[];
- #endif
+@@ -262,7 +262,7 @@
+ extern const char kChromeUIPrintHost[];
+ #endif // ENABLE_PRINT_PREVIEW
-#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[];
#endif
-@@ -326,7 +326,7 @@
+@@ -270,7 +270,7 @@
+ extern const char kChromeUILinuxProxyConfigHost[];
+ #endif
+
+-#if defined(OS_LINUX) || defined(OS_ANDROID)
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
+ extern const char kChromeUISandboxHost[];
+ #endif
+
+@@ -325,7 +325,7 @@
extern const char kChromeUIMetroFlowHost[];
#endif
diff --git a/www/chromium/files/patch-chrome_test_BUILD.gn b/www/chromium/files/patch-chrome_test_BUILD.gn
deleted file mode 100644
index ac0d28fdb5b3..000000000000
--- a/www/chromium/files/patch-chrome_test_BUILD.gn
+++ /dev/null
@@ -1,174 +0,0 @@
---- chrome/test/BUILD.gn.orig 2017-06-15 21:03:02.000000000 +0200
-+++ chrome/test/BUILD.gn 2017-06-22 05:09:51.612311000 +0200
-@@ -192,7 +192,7 @@
- ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- public_deps += [ "//crypto:platform" ]
- }
- if (is_mac) {
-@@ -454,7 +454,7 @@
- "$root_out_dir/test_page.css.mock-http-headers",
- "$root_out_dir/ui_test.pak",
- ]
-- if (is_linux || is_win) {
-+ if (is_linux || is_bsd || is_win) {
- data += [
- "$root_out_dir/chrome_100_percent.pak",
- "$root_out_dir/chrome_200_percent.pak",
-@@ -463,7 +463,7 @@
- "$root_out_dir/resources.pak",
- ]
- }
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- data += [ "$root_out_dir/libppapi_tests.so" ]
- }
-
-@@ -570,7 +570,7 @@
- "base/interactive_test_utils_views.cc",
- ]
- }
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- if (!is_chromeos) {
- # Desktop linux.
- sources -= [
-@@ -2044,14 +2044,14 @@
- sources += [ "//third_party/liblouis/nacl_wrapper/liblouis_wrapper_browsertest.cc" ]
- deps += [ "//chrome/browser/chromeos" ]
- data_deps += [ "//third_party/liblouis:liblouis_test_data" ]
-- } else if (is_linux || is_win) {
-+ } else if (is_linux || is_bsd || is_win) {
- sources += [
- "../browser/ui/views/ime/ime_warning_bubble_browsertest.cc",
- "../browser/ui/views/ime/ime_window_browsertest.cc",
- ]
- }
-
-- if (is_win || is_linux) {
-+ if (is_win || is_linux || is_bsd) {
- sources += [ "../browser/nacl_host/test/nacl_gdb_browsertest.cc" ]
- data_deps += [ "//chrome/browser/nacl_host/test:mock_nacl_gdb" ]
- }
-@@ -2063,7 +2063,7 @@
- configs +=
- [ "//build/config/win:default_large_module_incremental_linking" ]
- }
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- data_deps += [ "//components/nacl/loader:nacl_helper" ]
-
- if (enable_nacl_nonsfi) {
-@@ -2200,7 +2200,7 @@
- }
- }
-
-- if (is_linux && !is_component_build) {
-+ if ((is_linux || is_bsd) && !is_component_build) {
- # Set rpath to find the CDM adapter even in a non-component build.
- configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
- }
-@@ -2430,7 +2430,7 @@
- if (toolkit_views) {
- sources -= [ "../browser/ui/views/select_file_dialog_extension_browsertest.cc" ]
- }
-- if (is_win || is_linux) {
-+ if (is_win || is_linux || is_bsd) {
- sources +=
- [ "../browser/ui/views/ime/input_ime_apitest_nonchromeos.cc" ]
- }
-@@ -2620,7 +2620,7 @@
- "../browser/extensions/api/networking_private/networking_private_chromeos_apitest.cc",
- ]
- }
-- if (is_mac || is_win || (is_linux && !is_chromeos)) {
-+ if (is_mac || is_win || is_bsd || (is_linux && !is_chromeos)) {
- sources += [
- # Tests for non mobile and non CrOS (includes Linux, Win, Mac).
- "../browser/metrics/desktop_session_duration/audible_contents_tracker_browsertest.cc",
-@@ -2802,7 +2802,7 @@
- "//testing/xvfb.py",
- ]
-
-- if (is_linux || is_win) {
-+ if (is_linux || is_bsd || is_win) {
- data += [
- "$root_out_dir/chrome_100_percent.pak",
- "$root_out_dir/chrome_200_percent.pak",
-@@ -3504,9 +3504,14 @@
- "$root_out_dir/resources.pak",
- ]
- }
-- if (is_linux || is_win) {
-+ if (is_linux || is_bsd || is_win) {
- data += [ "$root_out_dir/chrome_200_percent.pak" ]
- }
-+
-+ if (is_bsd) {
-+ sources -= [ "../common/component_flash_hint_file_linux_unittest.cc" ]
-+ }
-+
- if (is_win) {
- data_deps += [ "//chrome" ]
- data += [ "$root_out_dir/chrome.exe" ]
-@@ -4234,7 +4239,7 @@
- "//ui/wm",
- ]
- }
-- if (!is_chromeos && is_linux) {
-+ if (!is_chromeos && (is_linux || is_bsd)) {
- sources += [
- "../browser/password_manager/native_backend_kwallet_x_unittest.cc",
- "../browser/shell_integration_linux_unittest.cc",
-@@ -4256,7 +4261,7 @@
- if (use_gio) {
- deps += [ "//build/linux/libgio" ]
- }
-- if (!is_chromeos && !use_ozone && is_linux) {
-+ if (!is_chromeos && !use_ozone && (is_linux || is_bsd)) {
- deps += [ "//chrome/browser/ui/libgtkui" ]
- }
-
-@@ -4537,18 +4542,18 @@
- "//components/os_crypt:gnome_keyring_direct",
- ]
- }
-- if (is_linux && !is_chromeos && !use_ozone) {
-+ if ((is_linux || is_bsd) && !is_chromeos && !use_ozone) {
- sources +=
- [ "../browser/password_manager/native_backend_libsecret_unittest.cc" ]
- deps += [ "//third_party/libsecret" ]
- }
-- if (is_linux && use_aura) {
-+ if ((is_linux || is_bsd) && use_aura) {
- deps += [ "//ui/aura:test_support" ]
- if (use_dbus) {
- deps += [ "//dbus:test_support" ]
- }
- }
-- if (is_linux && is_chrome_branded && current_cpu == "x86") {
-+ if ((is_linux || is_bsd) && is_chrome_branded && current_cpu == "x86") {
- ldflags = [ "-Wl,--strip-debug" ]
- }
- if (is_mac) {
-@@ -5045,7 +5050,7 @@
- }
- }
-
--if (!is_android) {
-+if (!is_android && !is_bsd) {
- # TODO(609855): Make this compile on Android and run on the bots.
- test("chrome_app_unittests") {
- sources = [
-@@ -5071,7 +5076,7 @@
- }
- }
-
--if (!is_android && !is_chromecast) {
-+if (!is_android && !is_chromecast && !is_bsd) {
- test("performance_browser_tests") {
- sources = [
- "../app/chrome_version.rc.version",
diff --git a/www/chromium/files/patch-chromecast_BUILD.gn b/www/chromium/files/patch-chromecast_BUILD.gn
deleted file mode 100644
index ac7833384bbf..000000000000
--- a/www/chromium/files/patch-chromecast_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- chromecast/BUILD.gn.orig 2017-04-19 19:06:32 UTC
-+++ chromecast/BUILD.gn
-@@ -55,7 +55,7 @@ cast_test_group("cast_tests") {
- }
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- tests += [ "//chromecast/crash:cast_crash_unittests" ]
- }
-
diff --git a/www/chromium/files/patch-chromecast_browser_BUILD.gn b/www/chromium/files/patch-chromecast_browser_BUILD.gn
deleted file mode 100644
index 0012a2ea80a2..000000000000
--- a/www/chromium/files/patch-chromecast_browser_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- chromecast/browser/BUILD.gn.orig 2017-04-19 19:06:32 UTC
-+++ chromecast/browser/BUILD.gn
-@@ -125,7 +125,7 @@ source_set("browser") {
- "//ui/gl",
- ]
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "cast_content_window_linux.cc",
- "cast_content_window_linux.h",
diff --git a/www/chromium/files/patch-chromecast_browser_cast__browser__main__parts.cc b/www/chromium/files/patch-chromecast_browser_cast__browser__main__parts.cc
deleted file mode 100644
index 779324e763d2..000000000000
--- a/www/chromium/files/patch-chromecast_browser_cast__browser__main__parts.cc
+++ /dev/null
@@ -1,38 +0,0 @@
---- chromecast/browser/cast_browser_main_parts.cc.orig 2017-07-25 21:04:53.000000000 +0200
-+++ chromecast/browser/cast_browser_main_parts.cc 2017-08-02 00:26:41.838446000 +0200
-@@ -70,7 +70,7 @@
- #include <signal.h>
- #include <sys/prctl.h>
- #endif
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- #include <fontconfig/fontconfig.h>
- #endif
-
-@@ -237,7 +237,7 @@
- {switches::kSkipGpuDataLoading, ""},
- #endif // defined(OS_ANDROID)
- #endif // BUILDFLAG(IS_CAST_AUDIO_ONLY)
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- #if defined(ARCH_CPU_X86_FAMILY)
- // This is needed for now to enable the x11 Ozone platform to work with
- // current Linux/NVidia OpenGL drivers.
-@@ -247,7 +247,7 @@
- {switches::kEnableHardwareOverlays, "cast"},
- #endif
- #endif
--#endif // defined(OS_LINUX)
-+#endif // defined(OS_LINUX) || defined(OS_BSD)
- // Needed so that our call to GpuDataManager::SetGLStrings doesn't race
- // against GPU process creation (which is otherwise triggered from
- // BrowserThreadsStarted). The GPU process will be created as soon as a
-@@ -382,7 +382,7 @@
- }
-
- void CastBrowserMainParts::ToolkitInitialized() {
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- // Without this call, the FontConfig library gets implicitly initialized
- // on the first call to FontConfig. Since it's not safe to initialize it
- // concurrently from multiple threads, we explicitly initialize it here
diff --git a/www/chromium/files/patch-chromecast_browser_metrics_BUILD.gn b/www/chromium/files/patch-chromecast_browser_metrics_BUILD.gn
deleted file mode 100644
index 367e3f1ef63a..000000000000
--- a/www/chromium/files/patch-chromecast_browser_metrics_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- chromecast/browser/metrics/BUILD.gn.orig 2017-04-19 19:06:32 UTC
-+++ chromecast/browser/metrics/BUILD.gn
-@@ -26,7 +26,7 @@ source_set("metrics") {
- "//content/public/common",
- ]
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "external_metrics.cc",
- "external_metrics.h",
diff --git a/www/chromium/files/patch-chromecast_crash_BUILD.gn b/www/chromium/files/patch-chromecast_crash_BUILD.gn
deleted file mode 100644
index 784556611b53..000000000000
--- a/www/chromium/files/patch-chromecast_crash_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- chromecast/crash/BUILD.gn.orig 2017-06-05 19:03:05 UTC
-+++ chromecast/crash/BUILD.gn
-@@ -79,7 +79,7 @@ source_set("test_support") {
- ]
- }
-
--if (is_linux) {
-+if (is_linux || is_bsd) {
- test("cast_crash_unittests") {
- sources = [
- "cast_crashdump_uploader_unittest.cc",
diff --git a/www/chromium/files/patch-components_BUILD.gn b/www/chromium/files/patch-components_BUILD.gn
deleted file mode 100644
index c6b6ffc7cb17..000000000000
--- a/www/chromium/files/patch-components_BUILD.gn
+++ /dev/null
@@ -1,13 +0,0 @@
---- components/BUILD.gn.orig 2017-06-05 19:03:05 UTC
-+++ components/BUILD.gn
-@@ -179,8 +179,8 @@ test("components_unittests") {
- "//components/certificate_reporting:unit_tests",
- "//components/certificate_transparency:unit_tests",
- "//components/contextual_search:unit_tests",
-- "//components/crash/content/app:unit_tests",
-- "//components/crash/core/common:unit_tests",
-+ #"//components/crash/content/app:unit_tests",
-+ #"//components/crash/core/common:unit_tests",
- "//components/data_reduction_proxy/content/browser:unit_tests",
- "//components/data_reduction_proxy/core/browser:unit_tests",
- "//components/data_reduction_proxy/core/common:unit_tests",
diff --git a/www/chromium/files/patch-components_autofill_strings.grdp b/www/chromium/files/patch-components_autofill_strings.grdp
index 030ad5c6697a..ff2709b5c30b 100644
--- a/www/chromium/files/patch-components_autofill_strings.grdp
+++ b/www/chromium/files/patch-components_autofill_strings.grdp
@@ -1,11 +1,20 @@
---- components/autofill_strings.grdp.orig 2017-08-01 23:47:48.599746000 +0200
-+++ components/autofill_strings.grdp 2017-08-01 23:48:08.253668000 +0200
-@@ -207,7 +207,7 @@
+--- components/autofill_strings.grdp.orig 2017-12-15 02:04:14.000000000 +0100
++++ components/autofill_strings.grdp 2017-12-24 11:25:08.009423000 +0100
+@@ -216,7 +216,7 @@
Do you want Chromium to save this card?
</message>
</if>
-- <if expr="is_linux and not is_chromeos">
-+ <if expr="is_posix and not is_chromeos">
+- <if expr="is_linux and not chromeos">
++ <if expr="is_posix and not chromeos">
<then>
<message name="IDS_AUTOFILL_SAVE_CARD_PROMPT_TITLE_TO_CLOUD" desc="Title text for the Autofill save card prompt when the card is to be saved by uploading it to Google Payments and also saved locally. The prompt can be either a bubble or an infobar.">
Do you want to save this card to your Google Account?
+@@ -234,7 +234,7 @@
+ <message name="IDS_AUTOFILL_SAVE_CARD_PROMPT_UPLOAD_EXPLANATION" desc="Explanation of the effect of the Autofill save card prompt when the card is to be saved by uploading it to Google Payments and also saved locally. The prompt can be either a bubble or an infobar.">
+ Pay quickly on sites and apps across devices using cards you have saved with Google.
+ </message>
+- <if expr="is_linux and not chromeos">
++ <if expr="is_posix and not chromeos">
+ <then>
+ <message name="IDS_AUTOFILL_SAVE_CARD_PROMPT_UPLOAD_EXPLANATION_V2" desc="Explanation of the effect of the Autofill save card prompt when the card is to be saved by uploading it to Google Payments, according to June 2017 UI guidelines. The prompt will be shown in a bubble below the omnibox.">
+ To pay faster next time, save this card to your Google Account.
diff --git a/www/chromium/files/patch-components_crash_content_app_BUILD.gn b/www/chromium/files/patch-components_crash_content_app_BUILD.gn
index a292bd40b6df..248cb315fdf0 100644
--- a/www/chromium/files/patch-components_crash_content_app_BUILD.gn
+++ b/www/chromium/files/patch-components_crash_content_app_BUILD.gn
@@ -1,11 +1,20 @@
---- components/crash/content/app/BUILD.gn.orig 2017-04-19 19:06:32 UTC
-+++ components/crash/content/app/BUILD.gn
-@@ -153,7 +153,7 @@ source_set("app_non_mac_win") {
- "//breakpad:breakpad_handler",
+--- components/crash/content/app/BUILD.gn.orig 2017-12-15 02:04:14.000000000 +0100
++++ components/crash/content/app/BUILD.gn 2017-12-24 11:36:40.773625000 +0100
+@@ -188,7 +188,7 @@
+ libs = [ "log" ]
+ }
+
+- if (is_android || is_linux) {
++ if (is_android || (is_linux && !is_bsd)) {
+ # Want these files on both Linux and Android.
+ set_sources_assignment_filter([])
+ sources += [
+@@ -218,7 +218,7 @@
"//sandbox",
+ "//third_party/breakpad:breakpad_handler",
]
- } else if (is_posix && !is_ios) {
+ } else if (is_posix && !is_ios && !is_bsd) {
- deps += [ "//breakpad:client" ]
+ deps += [ "//third_party/breakpad:client" ]
}
}
diff --git a/www/chromium/files/patch-components_crash_content_browser_BUILD.gn b/www/chromium/files/patch-components_crash_content_browser_BUILD.gn
index dcdecb6d24b2..ed72e88d927a 100644
--- a/www/chromium/files/patch-components_crash_content_browser_BUILD.gn
+++ b/www/chromium/files/patch-components_crash_content_browser_BUILD.gn
@@ -1,21 +1,23 @@
---- components/crash/content/browser/BUILD.gn.orig 2017-04-19 19:06:32 UTC
-+++ components/crash/content/browser/BUILD.gn
-@@ -16,7 +16,7 @@ source_set("browser") {
-
- deps = [
- "//base",
-- "//breakpad:client",
-+ #"//breakpad:client",
+--- components/crash/content/browser/BUILD.gn.orig 2017-12-15 02:04:14.000000000 +0100
++++ components/crash/content/browser/BUILD.gn 2017-12-24 11:42:34.318970000 +0100
+@@ -24,10 +24,9 @@
"//components/crash/content/app",
"//content/public/browser",
"//content/public/common",
-@@ -39,7 +39,7 @@ source_set("browser") {
+- "//third_party/breakpad:client",
+ ]
+
+- if (is_linux || is_android) {
++ if ((is_linux && !is_bsd) || is_android) {
+ set_sources_assignment_filter([])
+
+ # Want this file on both Linux and Android.
+@@ -43,7 +42,7 @@
+
# This is not in the GYP build but this target includes breakpad client
# headers, so add the dependency here.
- if (is_posix && !is_ios) {
-- configs += [ "//breakpad:client_config" ]
-- public_configs = [ "//breakpad:client_config" ]
-+ #configs += [ "//breakpad:client_config" ]
-+ #public_configs = [ "//breakpad:client_config" ]
+- if (is_posix && !is_ios) {
++ if (is_posix && !is_ios && !is_bsd) {
+ configs += [ "//third_party/breakpad:client_config" ]
+ public_configs = [ "//third_party/breakpad:client_config" ]
}
- }
diff --git a/www/chromium/files/patch-components_feature_engagement_public_event_constants.cc b/www/chromium/files/patch-components_feature_engagement_public_event_constants.cc
new file mode 100644
index 000000000000..7128d32a0722
--- /dev/null
+++ b/www/chromium/files/patch-components_feature_engagement_public_event_constants.cc
@@ -0,0 +1,14 @@
+--- components/feature_engagement/public/event_constants.cc.orig 2017-12-24 11:50:13.400967000 +0100
++++ components/feature_engagement/public/event_constants.cc 2017-12-24 11:50:56.302146000 +0100
+@@ -24,9 +24,9 @@
+
+ #endif // BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
+
+-#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_IOS)
++#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_IOS) || defined(OS_BSD)
+ const char kNewTabOpened[] = "new_tab_opened";
+-#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_IOS)
++#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_IOS) || defined(OS_BSD)
+
+ #if defined(OS_IOS)
+ const char kChromeOpened[] = "chrome_opened";
diff --git a/www/chromium/files/patch-components_feature_engagement_public_event_constants.h b/www/chromium/files/patch-components_feature_engagement_public_event_constants.h
new file mode 100644
index 000000000000..d39d1a593ae8
--- /dev/null
+++ b/www/chromium/files/patch-components_feature_engagement_public_event_constants.h
@@ -0,0 +1,20 @@
+--- components/feature_engagement/public/event_constants.h.orig 2017-12-24 11:50:25.527960000 +0100
++++ components/feature_engagement/public/event_constants.h 2017-12-24 11:51:24.453190000 +0100
+@@ -42,7 +42,7 @@
+ extern const char kIncognitoWindowSessionTimeMet[];
+ #endif // BUILDFLAG(ENABLE_DESKTOP_IN_PRODUCT_HELP)
+
+-#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_IOS)
++#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_IOS) || defined(OS_BSD)
+ // This event is included in the deferred onboarding events for the New Tab
+ // described above, but it is also used on iOS, so it must be compiled
+ // separately.
+@@ -50,7 +50,7 @@
+ // The user has explicitly opened a new tab via an entry point from inside of
+ // Chrome.
+ extern const char kNewTabOpened[];
+-#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_IOS)
++#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_IOS) || defined(OS_BSD)
+
+ #if defined(OS_IOS)
+ // The user has opened Chrome (cold start or from background).
diff --git a/www/chromium/files/patch-components_metrics_BUILD.gn b/www/chromium/files/patch-components_metrics_BUILD.gn
index 4daefb851614..e15d4f2f9a23 100644
--- a/www/chromium/files/patch-components_metrics_BUILD.gn
+++ b/www/chromium/files/patch-components_metrics_BUILD.gn
@@ -1,34 +1,14 @@
---- components/metrics/BUILD.gn.orig 2017-06-05 19:03:05 UTC
-+++ components/metrics/BUILD.gn
-@@ -121,6 +121,13 @@ static_library("metrics") {
- if (is_win) {
- sources -= [ "machine_id_provider_stub.cc" ]
+--- components/metrics/BUILD.gn.orig 2017-12-15 02:04:14.000000000 +0100
++++ components/metrics/BUILD.gn 2017-12-30 02:31:51.554746000 +0100
+@@ -137,6 +137,11 @@
+ if (is_fuchsia) {
+ sources += [ "drive_metrics_provider_fuchsia.cc" ]
}
+
+ if (is_bsd) {
-+ sources -= [
-+ "system_memory_stats_recorder_linux.cc"
-+ ]
++ sources -= [ "system_memory_stats_recorder_linux.cc" ]
+ }
+
}
- if (!is_ios) {
-@@ -298,7 +305,7 @@ static_library("test_support") {
- ]
- }
-
--if (is_linux) {
-+if (is_linux || is_bsd) {
- static_library("serialization") {
- sources = [
- "serialization/metric_sample.cc",
-@@ -360,7 +367,7 @@ source_set("unit_tests") {
- "//ui/gfx/geometry",
- ]
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [ "serialization/serialization_utils_unittest.cc" ]
- deps += [ ":serialization" ]
- }
+ # The component metrics provider is a separate target because it depends upon
diff --git a/www/chromium/files/patch-components_network_session_configurator_browser_network_session_configurator.cc b/www/chromium/files/patch-components_network_session_configurator_browser_network_session_configurator.cc
new file mode 100644
index 000000000000..d59b65ddc883
--- /dev/null
+++ b/www/chromium/files/patch-components_network_session_configurator_browser_network_session_configurator.cc
@@ -0,0 +1,11 @@
+--- components/network_session_configurator/browser/network_session_configurator.cc.orig 2017-12-24 12:05:09.663658000 +0100
++++ components/network_session_configurator/browser/network_session_configurator.cc 2017-12-24 12:05:50.949666000 +0100
+@@ -460,7 +460,7 @@
+ }
+ #endif // #if !defined(OS_ANDROID)
+
+-#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_CHROMEOS)
++#if defined(OS_ANDROID) || defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_BSD)
+ return net::URLRequestContextBuilder::HttpCacheParams::DISK_SIMPLE;
+ #else
+ return net::URLRequestContextBuilder::HttpCacheParams::DISK_BLOCKFILE;
diff --git a/www/chromium/files/patch-components_new_or_sad_tab_strings.grdp b/www/chromium/files/patch-components_new_or_sad_tab_strings.grdp
index 7cf3bfa889ac..9568626c9cb4 100644
--- a/www/chromium/files/patch-components_new_or_sad_tab_strings.grdp
+++ b/www/chromium/files/patch-components_new_or_sad_tab_strings.grdp
@@ -1,38 +1,38 @@
---- components/new_or_sad_tab_strings.grdp.orig 2017-08-02 19:00:40.657953000 +0200
-+++ components/new_or_sad_tab_strings.grdp 2017-08-02 19:02:23.894386000 +0200
-@@ -58,7 +58,7 @@
- Open page in Incognito mode (⇧⌘N)
+--- components/new_or_sad_tab_strings.grdp.orig 2017-12-15 02:04:14.000000000 +0100
++++ components/new_or_sad_tab_strings.grdp 2017-12-24 11:49:23.903168000 +0100
+@@ -48,7 +48,7 @@
+ Open page in a new Incognito window (⇧⌘N)
</message>
</if>
- <if expr="is_win or is_linux or chromeos">
+ <if expr="is_win or is_posix or chromeos">
- <message name="IDS_SAD_TAB_RELOAD_INCOGNITO" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to open the web page in Chrome's Incognito mode." formatter_data="android_java">
- Open page in Incognito mode (Ctrl-Shift-N)
+ <message name="IDS_SAD_TAB_RELOAD_INCOGNITO" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to open the web page in Chrome's Incognito mode.">
+ Open page in a new Incognito window (Ctrl-Shift-N)
</message>
-@@ -73,7 +73,7 @@
+@@ -63,7 +63,7 @@
Close other tabs or apps
</message>
</if>
- <if expr="is_linux and not chromeos">
+ <if expr="is_posix and not chromeos">
- <message name="IDS_SAD_TAB_RELOAD_CLOSE_TABS" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to close other Chrome tabs or programs running on their computer." formatter_data="android_java">
+ <message name="IDS_SAD_TAB_RELOAD_CLOSE_TABS" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to close other Chrome tabs or programs running on their computer.">
Close other tabs or programs
</message>
-@@ -83,7 +83,7 @@
+@@ -73,7 +73,7 @@
Close other apps
</message>
</if>
- <if expr="is_linux and not chromeos">
+ <if expr="is_posix and not chromeos">
- <message name="IDS_SAD_TAB_RELOAD_CLOSE_NOTABS" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to close other programs running on their computer (Linux)." formatter_data="android_java">
+ <message name="IDS_SAD_TAB_RELOAD_CLOSE_NOTABS" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to close other programs running on their computer (Linux).">
Close other programs
</message>
-@@ -98,7 +98,7 @@
+@@ -88,7 +88,7 @@
Restart Chromium
</message>
</if>
- <if expr="is_win or is_linux or is_macosx or chromeos">
+ <if expr="is_win or is_posix or is_macosx or chromeos">
- <message name="IDS_SAD_TAB_RELOAD_RESTART_DEVICE" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to restart their computer." formatter_data="android_java">
+ <message name="IDS_SAD_TAB_RELOAD_RESTART_DEVICE" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to restart their computer.">
Restart your computer
</message>
diff --git a/www/chromium/files/patch-components_os__crypt_os__crypt__unittest.cc b/www/chromium/files/patch-components_os__crypt_os__crypt__unittest.cc
index f6a6036dfdab..398385b87bac 100644
--- a/www/chromium/files/patch-components_os__crypt_os__crypt__unittest.cc
+++ b/www/chromium/files/patch-components_os__crypt_os__crypt__unittest.cc
@@ -1,5 +1,5 @@
---- components/os_crypt/os_crypt_unittest.cc.orig 2017-06-21 19:22:48.122268000 +0200
-+++ components/os_crypt/os_crypt_unittest.cc 2017-06-21 19:23:55.247270000 +0200
+--- components/os_crypt/os_crypt_unittest.cc.orig 2017-12-15 02:04:15.000000000 +0100
++++ components/os_crypt/os_crypt_unittest.cc 2017-12-24 11:56:52.206820000 +0100
@@ -18,7 +18,7 @@
#include "components/os_crypt/os_crypt_mocker.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -9,12 +9,3 @@
#include "components/os_crypt/os_crypt_mocker_linux.h"
#endif
-@@ -151,7 +151,7 @@
- class OSCryptConcurrencyTest : public testing::Test {
- public:
- OSCryptConcurrencyTest() {
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)
- // Mock the key storage, but not the process of getting the passwords.
- UseMockKeyStorageForTesting(
- []() -> KeyStorageLinux* { return OSCryptMockerLinux::GetInstance(); },
diff --git a/www/chromium/files/patch-components_password__manager_core_browser_BUILD.gn b/www/chromium/files/patch-components_password__manager_core_browser_BUILD.gn
deleted file mode 100644
index 906b5777eb48..000000000000
--- a/www/chromium/files/patch-components_password__manager_core_browser_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- components/password_manager/core/browser/BUILD.gn.orig 2017-09-08 15:12:30.553398000 +0200
-+++ components/password_manager/core/browser/BUILD.gn 2017-09-08 15:13:12.165028000 +0200
-@@ -150,7 +150,7 @@
- "password_reuse_detector_consumer.h",
- ]
-
-- if (is_win || is_mac || (is_linux && !is_chromeos)) {
-+ if (is_win || is_mac || is_bsd || (is_linux && !is_chromeos)) {
- sources += [
- "hash_password_manager.cc",
- "hash_password_manager.h",
-@@ -362,7 +362,7 @@
- "password_reuse_detector_unittest.cc",
- ]
- }
-- if (is_win || is_mac || (is_linux && !is_chromeos)) {
-+ if (is_win || is_mac || is_bsd || (is_linux && !is_chromeos)) {
- sources += [ "hash_password_manager_unittest.cc" ]
- }
- deps = [
diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password_manager.cc b/www/chromium/files/patch-components_password__manager_core_browser_password_manager.cc
new file mode 100644
index 000000000000..881aa40ac07b
--- /dev/null
+++ b/www/chromium/files/patch-components_password__manager_core_browser_password_manager.cc
@@ -0,0 +1,11 @@
+--- components/password_manager/core/browser/password_manager.cc.orig 2017-12-24 01:41:33.322933000 +0100
++++ components/password_manager/core/browser/password_manager.cc 2017-12-24 01:42:03.056816000 +0100
+@@ -780,7 +780,7 @@
+ if (!client_->GetStoreResultFilter()->ShouldSave(
+ *provisional_save_manager_->submitted_form())) {
+ #if defined(OS_WIN) || (defined(OS_MACOSX) && !defined(OS_IOS)) || \
+- (defined(OS_LINUX) && !defined(OS_CHROMEOS))
++ (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
+ // When |username_value| is empty, it's not clear whether the submitted
+ // credentials are really sync credentials. Don't save sync password hash
+ // in that case.
diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password_store.cc b/www/chromium/files/patch-components_password__manager_core_browser_password_store.cc
new file mode 100644
index 000000000000..1eb5980eb8ba
--- /dev/null
+++ b/www/chromium/files/patch-components_password__manager_core_browser_password_store.cc
@@ -0,0 +1,11 @@
+--- components/password_manager/core/browser/password_store.cc.orig 2017-12-30 02:35:17.422703000 +0100
++++ components/password_manager/core/browser/password_store.cc 2017-12-30 02:35:55.798169000 +0100
+@@ -274,7 +274,7 @@
+ }
+
+ #if defined(OS_WIN) || (defined(OS_MACOSX) && !defined(OS_IOS)) || \
+- (defined(OS_LINUX) && !defined(OS_CHROMEOS))
++ (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_BSD)
+ if (!sync_username.empty())
+ hash_password_manager_.ReportIsSyncPasswordHashSavedMetric();
+ #endif
diff --git a/www/chromium/files/patch-components_plugins_renderer_BUILD.gn b/www/chromium/files/patch-components_plugins_renderer_BUILD.gn
deleted file mode 100644
index 95a3a2fd40ad..000000000000
--- a/www/chromium/files/patch-components_plugins_renderer_BUILD.gn
+++ /dev/null
@@ -1,17 +0,0 @@
---- components/plugins/renderer/BUILD.gn.orig 2017-04-19 19:06:33 UTC
-+++ components/plugins/renderer/BUILD.gn
-@@ -20,6 +20,7 @@ static_library("renderer") {
- }
-
- deps = [
-+ "//v8",
- "//content/public/child",
- "//content/public/common",
- "//content/public/renderer",
-@@ -28,6 +29,5 @@ static_library("renderer") {
- "//third_party/WebKit/public:blink",
- "//third_party/re2",
- "//ui/base",
-- "//v8",
- ]
- }
diff --git a/www/chromium/files/patch-components_policy_tools_generate__policy__source.py b/www/chromium/files/patch-components_policy_tools_generate__policy__source.py
index 1b13665fce9a..902948b771fc 100644
--- a/www/chromium/files/patch-components_policy_tools_generate__policy__source.py
+++ b/www/chromium/files/patch-components_policy_tools_generate__policy__source.py
@@ -1,20 +1,20 @@
---- components/policy/tools/generate_policy_source.py.orig 2017-09-07 05:49:44.475708000 +0200
-+++ components/policy/tools/generate_policy_source.py 2017-09-07 06:03:36.269823000 +0200
-@@ -90,7 +90,7 @@
+--- components/policy/tools/generate_policy_source.py.orig 2017-12-15 02:04:15.000000000 +0100
++++ components/policy/tools/generate_policy_source.py 2017-12-24 12:04:08.751317000 +0100
+@@ -91,7 +91,7 @@
+ raise RuntimeError('is_device_only is only allowed for Chrome OS: "%s"'
+ % p)
if platform not in ['chrome_frame', 'chrome_os',
- 'android', 'webview_android',
+- 'android', 'webview_android',
++ 'android', 'webview_android', 'chrome.bsd',
'chrome.win', 'chrome.linux', 'chrome.mac',
-- 'chrome.*']:
-+ 'chrome.bsd', 'chrome.*']:
+ 'chrome.fuchsia', 'chrome.*']:
raise RuntimeError('Platform "%s" is not supported' % platform)
-
- split_result = version_range.split('-')
-@@ -108,7 +108,7 @@
+@@ -111,7 +111,7 @@
if platform.startswith('chrome.'):
platform_sub = platform[7:]
if platform_sub == '*':
-- self.platforms.extend(['win', 'mac', 'linux'])
-+ self.platforms.extend(['win', 'mac', 'linux', 'bsd'])
+- self.platforms.extend(['win', 'mac', 'linux', 'fuchsia'])
++ self.platforms.extend(['win', 'mac', 'linux', 'fuchsia', 'bsd'])
else:
self.platforms.append(platform_sub)
else:
diff --git a/www/chromium/files/patch-components_storage__monitor_BUILD.gn b/www/chromium/files/patch-components_storage__monitor_BUILD.gn
index e5cdb683bdb4..d9c7fdf1829f 100644
--- a/www/chromium/files/patch-components_storage__monitor_BUILD.gn
+++ b/www/chromium/files/patch-components_storage__monitor_BUILD.gn
@@ -1,6 +1,6 @@
---- components/storage_monitor/BUILD.gn.orig 2017-04-19 19:06:33 UTC
-+++ components/storage_monitor/BUILD.gn
-@@ -65,6 +65,21 @@ static_library("storage_monitor") {
+--- components/storage_monitor/BUILD.gn.orig 2017-12-15 02:04:15.000000000 +0100
++++ components/storage_monitor/BUILD.gn 2017-12-30 01:29:29.688538000 +0100
+@@ -65,6 +65,17 @@
]
}
@@ -8,10 +8,6 @@
+ sources -= [
+ "mtab_watcher_linux.cc",
+ "mtab_watcher_linux.h",
-+ "storage_monitor_linux.cc",
-+ "storage_monitor_linux.h",
-+ "udev_util_linux.cc",
-+ "udev_util_linux.h",
+ ]
+ sources += [
+ "storage_monitor_freebsd.cc",
diff --git a/www/chromium/files/patch-components_tracing_child_child__trace__message__filter.cc b/www/chromium/files/patch-components_tracing_child_child__trace__message__filter.cc
deleted file mode 100644
index 15b6f90bab13..000000000000
--- a/www/chromium/files/patch-components_tracing_child_child__trace__message__filter.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- components/tracing/child/child_trace_message_filter.cc.orig 2017-06-05 19:03:06 UTC
-+++ components/tracing/child/child_trace_message_filter.cc
-@@ -35,7 +35,7 @@ void ChildTraceMessageFilter::OnFilterAdded(IPC::Chann
- sender_ = channel;
- sender_->Send(new TracingHostMsg_ChildSupportsTracing());
-
--#if !defined(OS_LINUX) && !defined(OS_NACL)
-+#if !defined(OS_LINUX) && !defined(OS_NACL) && !defined(OS_BSD)
- // On linux the browser process takes care of dumping process metrics.
- // The child process is not allowed to do so due to BPF sandbox.
- tracing::ProcessMetricsMemoryDumpProvider::RegisterForProcess(
diff --git a/www/chromium/files/patch-content_app_BUILD.gn b/www/chromium/files/patch-content_app_BUILD.gn
deleted file mode 100644
index 38d76b929a54..000000000000
--- a/www/chromium/files/patch-content_app_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- content/app/BUILD.gn.orig 2017-06-05 19:03:06 UTC
-+++ content/app/BUILD.gn
-@@ -67,7 +67,7 @@ template("implement_content_app") {
- ]
- }
-
-- if (is_linux && enable_plugins) {
-+ if ((is_linux || is_bsd) && enable_plugins) {
- content_app_deps += [ "//content/ppapi_plugin:ppapi_plugin_sources" ]
- }
-
diff --git a/www/chromium/files/patch-content_app_content__main__runner.cc b/www/chromium/files/patch-content_app_content__main__runner.cc
index 6d9bb3e8dfa9..67d3681d6022 100644
--- a/www/chromium/files/patch-content_app_content__main__runner.cc
+++ b/www/chromium/files/patch-content_app_content__main__runner.cc
@@ -1,6 +1,6 @@
---- content/app/content_main_runner.cc.orig 2017-06-05 19:03:06 UTC
-+++ content/app/content_main_runner.cc
-@@ -86,10 +86,10 @@
+--- content/app/content_main_runner.cc.orig 2017-12-15 02:04:16.000000000 +0100
++++ content/app/content_main_runner.cc 2017-12-24 12:20:00.837482000 +0100
+@@ -83,10 +83,10 @@
#include "base/posix/global_descriptors.h"
#include "content/public/common/content_descriptors.h"
@@ -13,30 +13,34 @@
#include "content/zygote/zygote_main.h"
#endif
-@@ -312,7 +312,7 @@ struct MainFunction {
- int (*function)(const MainFunctionParams&);
+@@ -307,7 +307,7 @@
};
--#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
+ #if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && \
+- !defined(OS_FUCHSIA)
++ !defined(OS_FUCHSIA) && !defined(OS_BSD)
// On platforms that use the zygote, we have a special subset of
// subprocesses that are launched via the zygote. This function
// fills in some process-launching bits around ZygoteMain().
-@@ -373,7 +373,7 @@ int RunZygote(const MainFunctionParams& main_function_
- NOTREACHED() << "Unknown zygote process type: " << process_type;
- return 1;
- }
--#endif // defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#endif // defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
-
- static void RegisterMainThreadFactories() {
- #if !defined(CHROME_MULTIPLE_DLL_BROWSER) && !defined(CHROME_MULTIPLE_DLL_CHILD)
-@@ -439,7 +439,7 @@ int RunNamedProcessTypeMain(
- }
+@@ -432,7 +432,7 @@
}
--#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
+ #if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && \
+- !defined(OS_FUCHSIA)
++ !defined(OS_FUCHSIA) && !defined(OS_BSD)
// Zygote startup is special -- see RunZygote comments above
// for why we don't use ZygoteMain directly.
if (process_type == switches::kZygoteProcess)
+@@ -502,10 +502,10 @@
+ kFieldTrialDescriptor + base::GlobalDescriptors::kBaseDescriptor);
+ #endif // !OS_ANDROID
+
+-#if defined(OS_LINUX) || defined(OS_OPENBSD)
++#if defined(OS_LINUX)
+ g_fds->Set(kCrashDumpSignal,
+ kCrashDumpSignal + base::GlobalDescriptors::kBaseDescriptor);
+-#endif // OS_LINUX || OS_OPENBSD
++#endif // OS_LINUX
+
+ #endif // !OS_WIN
+
diff --git a/www/chromium/files/patch-content_browser_BUILD.gn b/www/chromium/files/patch-content_browser_BUILD.gn
index 3a46edf862b1..e8e0cbfdbd31 100644
--- a/www/chromium/files/patch-content_browser_BUILD.gn
+++ b/www/chromium/files/patch-content_browser_BUILD.gn
@@ -1,8 +1,8 @@
---- content/browser/BUILD.gn.orig 2017-09-05 21:05:18.000000000 +0200
-+++ content/browser/BUILD.gn 2017-09-06 19:35:15.088548000 +0200
-@@ -1599,11 +1599,6 @@
- "memory/memory_monitor_chromeos.cc",
- "memory/memory_monitor_chromeos.h",
+--- content/browser/BUILD.gn.orig 2017-12-15 02:04:16.000000000 +0100
++++ content/browser/BUILD.gn 2017-12-30 02:42:45.654369000 +0100
+@@ -1674,11 +1674,6 @@
+ "tracing/cros_tracing_agent.cc",
+ "tracing/cros_tracing_agent.h",
]
- } else {
- sources += [
@@ -11,20 +11,12 @@
- ]
}
- if (!is_win) {
-@@ -1672,7 +1667,7 @@
-
- # Desktop screen capture implementations, conditionally built depending on
- # the available implementations for each platform.
-- if (is_linux || is_mac || is_win) {
-+ if (is_linux || is_bsd || is_mac || is_win) {
- defines += [ "ENABLE_SCREEN_CAPTURE=1" ]
- sources += [
- "media/capture/cursor_renderer.cc",
-@@ -2039,6 +2034,17 @@
+ if (is_fuchsia) {
+@@ -2123,6 +2118,17 @@
+ deps += [
"//chromeos",
"//chromeos:power_manager_proto",
- ]
++ ]
+ } else if (is_bsd) {
+ sources -= [
+ "zygote_host/zygote_communication_linux.cc",
@@ -35,21 +27,6 @@
+ "../zygote/zygote_linux.cc",
+ "../zygote/zygote_linux.h",
+ "../zygote/zygote_main_linux.cc",
-+ ]
- }
-
- if (use_aura) {
-@@ -2148,11 +2154,11 @@
]
}
-- if (is_linux && use_dbus) {
-+ if ((is_linux || is_bsd) && use_dbus) {
- deps += [ "//dbus" ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- deps += [ "//third_party/boringssl" ]
- }
-
diff --git a/www/chromium/files/patch-content_browser_accessibility_browser_accessibility_auralinux.cc b/www/chromium/files/patch-content_browser_accessibility_browser_accessibility_auralinux.cc
deleted file mode 100644
index c76704114d7d..000000000000
--- a/www/chromium/files/patch-content_browser_accessibility_browser_accessibility_auralinux.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- content/browser/accessibility/browser_accessibility_auralinux.cc.orig 2017-09-07 11:43:10.700550000 +0200
-+++ content/browser/accessibility/browser_accessibility_auralinux.cc 2017-09-07 11:41:51.229880000 +0200
-@@ -571,7 +571,7 @@
- // it's best to leave this out rather than break people's builds:
- #if defined(ATK_CHECK_VERSION)
- #if ATK_CHECK_VERSION(2, 16, 0)
-- atk_state_set_add_state(atk_state_set, ATK_STATE_READ_ONLY);
-+ atk_state_set_add_state(state_set, ATK_STATE_READ_ONLY);
- #endif
- #endif
- break;
diff --git a/www/chromium/files/patch-content_browser_browser__main__loop.cc b/www/chromium/files/patch-content_browser_browser__main__loop.cc
index 63b800dbb890..02fe6f4fa932 100644
--- a/www/chromium/files/patch-content_browser_browser__main__loop.cc
+++ b/www/chromium/files/patch-content_browser_browser__main__loop.cc
@@ -1,40 +1,73 @@
---- content/browser/browser_main_loop.cc.orig 2017-06-05 19:03:06 UTC
-+++ content/browser/browser_main_loop.cc
-@@ -210,6 +210,11 @@
+--- content/browser/browser_main_loop.cc.orig 2018-01-04 21:05:49.000000000 +0100
++++ content/browser/browser_main_loop.cc 2018-01-21 04:50:16.739260000 +0100
+@@ -198,7 +198,7 @@
+ #include "base/fuchsia/default_job.h"
+ #endif // defined(OS_FUCHSIA)
+
+-#if defined(OS_POSIX) && !defined(OS_MACOSX)
++#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD)
+ #include "content/browser/sandbox_host_linux.h"
+ #include "content/browser/zygote_host/zygote_host_impl_linux.h"
+
+@@ -232,6 +232,11 @@
#include "gpu/vulkan/vulkan_implementation.h"
#endif
+#if defined(OS_BSD)
++#include "content/browser/sandbox_host_linux.h"
+#include "content/common/sandbox_linux/sandbox_linux.h"
-+#include "content/child/child_process_sandbox_support_impl_linux.h"
+#endif
+
// One of the linux specific headers defines this as a macro.
#ifdef DestroyAll
#undef DestroyAll
-@@ -218,7 +223,7 @@
- namespace content {
- namespace {
+@@ -249,7 +254,7 @@
+ }
--#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
+ #if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && \
+- !defined(OS_FUCHSIA)
++ !defined(OS_FUCHSIA) && !defined(OS_BSD)
void SetupSandbox(const base::CommandLine& parsed_command_line) {
TRACE_EVENT0("startup", "SetupSandbox");
- if (parsed_command_line.HasSwitch(switches::kNoZygote)) {
-@@ -553,10 +558,15 @@ void BrowserMainLoop::Init() {
- void BrowserMainLoop::EarlyInitialization() {
+ // SandboxHostLinux needs to be initialized even if the sandbox and
+@@ -272,7 +277,7 @@
+ generic_zygote->GetSandboxStatus());
+ }
+ #endif // defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && \
+- // !defined(OS_FUCHSIA)
++ // !defined(OS_FUCHSIA) && !defined(OS_BSD)
+
+ #if defined(USE_GLIB)
+ static void GLibLogHandler(const gchar* log_domain,
+@@ -574,10 +579,15 @@
TRACE_EVENT0("startup", "BrowserMainLoop::EarlyInitialization");
--#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
+ #if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && \
+- !defined(OS_FUCHSIA)
++ !defined(OS_FUCHSIA) && !defined(OS_BSD)
// No thread should be created before this call, as SetupSandbox()
// will end-up using fork().
SetupSandbox(parsed_command_line_);
+#elif defined(OS_BSD)
-+ RenderSandboxHostLinux::GetInstance()->Init();
++ SandboxHostLinux::GetInstance()->Init();
+ base::FileHandleMappingVector fds_to_map;
-+ const int sfd = RenderSandboxHostLinux::GetInstance()->GetRendererSocket();
++ const int sfd = SandboxHostLinux::GetInstance()->GetChildSocket();
+ fds_to_map.push_back(std::make_pair(sfd, GetSandboxFD()));
#endif
#if defined(USE_X11)
+@@ -1619,12 +1629,12 @@
+ base::WrapUnique<SwapMetricsDriver::Delegate>(
+ new SwapMetricsDelegateUma()));
+
+-#if !defined(OS_FUCHSIA)
++#if !defined(OS_FUCHSIA) && !defined(OS_BSD)
+ swap_metrics_driver_ =
+ SwapMetricsDriver::Create(std::move(delegate), kSwapMetricsInterval);
+ if (swap_metrics_driver_)
+ swap_metrics_driver_->Start();
+-#endif // !defined(OS_FUCHSIA)
++#endif // !defined(OS_FUCHSIA) && !defined(OS_BSD)
+ }
+
+ bool BrowserMainLoop::InitializeToolkit() {
diff --git a/www/chromium/files/patch-content_browser_gpu_gpu__internals__ui.cc b/www/chromium/files/patch-content_browser_gpu_gpu__internals__ui.cc
index 1ecd5f91655e..2a555306ce5a 100644
--- a/www/chromium/files/patch-content_browser_gpu_gpu__internals__ui.cc
+++ b/www/chromium/files/patch-content_browser_gpu_gpu__internals__ui.cc
@@ -1,14 +1,5 @@
---- content/browser/gpu/gpu_internals_ui.cc.orig 2017-06-05 19:03:07 UTC
-+++ content/browser/gpu/gpu_internals_ui.cc
-@@ -43,7 +43,7 @@
- #include "third_party/skia/include/core/SkMilestone.h"
- #include "ui/gl/gpu_switching_manager.h"
-
--#if defined(OS_LINUX) && defined(USE_X11)
-+#if (defined(OS_BSD) || defined(OS_LINUX)) && defined(USE_X11)
- #include <X11/Xlib.h>
- #endif
- #if defined(OS_WIN)
+--- content/browser/gpu/gpu_internals_ui.cc.orig 2017-12-15 02:04:16.000000000 +0100
++++ content/browser/gpu/gpu_internals_ui.cc 2017-12-24 12:40:09.587854000 +0100
@@ -51,7 +51,7 @@
#include "ui/gfx/win/physical_size.h"
#endif
@@ -18,7 +9,7 @@
#include "ui/base/x/x11_util.h" // nogncheck
#include "ui/gfx/x/x11_atom_cache.h" // nogncheck
#endif
-@@ -206,7 +206,7 @@ base::DictionaryValue* GpuInfoAsDictionaryValue() {
+@@ -209,7 +209,7 @@
gpu_info.gl_ws_version));
basic_info->Append(NewDescriptionValuePair("Window system binding extensions",
gpu_info.gl_ws_extensions));
diff --git a/www/chromium/files/patch-content_browser_memory_memory__coordinator__impl.cc b/www/chromium/files/patch-content_browser_memory_memory__coordinator__impl.cc
deleted file mode 100644
index a8acb1089363..000000000000
--- a/www/chromium/files/patch-content_browser_memory_memory__coordinator__impl.cc
+++ /dev/null
@@ -1,16 +0,0 @@
---- content/browser/memory/memory_coordinator_impl.cc.orig 2017-08-10 15:17:56.475998000 +0200
-+++ content/browser/memory/memory_coordinator_impl.cc 2017-08-10 15:29:14.826033000 +0200
-@@ -121,10 +121,13 @@
- MemoryCoordinatorImpl* MemoryCoordinatorImpl::GetInstance() {
- if (!base::FeatureList::IsEnabled(features::kMemoryCoordinator))
- return nullptr;
-+#if !defined(OS_BSD)
- static MemoryCoordinatorImpl* instance = new MemoryCoordinatorImpl(
- base::ThreadTaskRunnerHandle::Get(), CreateMemoryMonitor());
- return instance;
-+#endif
- }
-+
-
- MemoryCoordinatorImpl::MemoryCoordinatorImpl(
- scoped_refptr<base::SingleThreadTaskRunner> task_runner,
diff --git a/www/chromium/files/patch-content_browser_memory_memory__monitor.cc b/www/chromium/files/patch-content_browser_memory_memory__monitor.cc
index 6ac5abc4f252..d97fb80334a0 100644
--- a/www/chromium/files/patch-content_browser_memory_memory__monitor.cc
+++ b/www/chromium/files/patch-content_browser_memory_memory__monitor.cc
@@ -1,21 +1,11 @@
---- content/browser/memory/memory_monitor.cc.orig 2017-06-05 19:03:07 UTC
-+++ content/browser/memory/memory_monitor.cc
-@@ -8,6 +8,7 @@
-
- namespace content {
-
-+#if !defined(OS_FREEBSD)
- // static
- MemoryMonitorDelegate* MemoryMonitorDelegate::GetInstance() {
- return base::Singleton<
-@@ -21,8 +22,9 @@ void MemoryMonitorDelegate::GetSystemMemoryInfo(
- base::SystemMemoryInfoKB* mem_info) {
+--- content/browser/memory/memory_monitor.cc.orig 2018-01-04 21:05:50.000000000 +0100
++++ content/browser/memory/memory_monitor.cc 2018-01-27 19:06:05.251190000 +0100
+@@ -22,7 +22,7 @@
base::GetSystemMemoryInfo(mem_info);
}
-+#endif // !defined(OS_FREEBSD)
-#if defined(OS_MACOSX)
-+#if defined(OS_MACOSX) && !defined(OS_FREEBSD)
++#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/chromium/files/patch-content_browser_memory_swap_metrics_observer_linux.cc b/www/chromium/files/patch-content_browser_memory_swap_metrics_observer_linux.cc
deleted file mode 100644
index 776b00f3d0fc..000000000000
--- a/www/chromium/files/patch-content_browser_memory_swap_metrics_observer_linux.cc
+++ /dev/null
@@ -1,15 +0,0 @@
---- content/browser/memory/swap_metrics_observer_linux.cc.orig 2017-08-10 15:31:54.593212000 +0200
-+++ content/browser/memory/swap_metrics_observer_linux.cc 2017-08-10 15:37:58.561111000 +0200
-@@ -12,10 +12,12 @@
- namespace {
-
- bool HasSwap() {
-+#if !defined(OS_BSD)
- base::SystemMemoryInfoKB memory_info;
- if (!base::GetSystemMemoryInfo(&memory_info))
- return false;
- return memory_info.swap_total > 0;
-+#endif
- }
-
- } // namespace
diff --git a/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc b/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc
index a0476b619c4a..d9e78f71b485 100644
--- a/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc
+++ b/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc
@@ -1,11 +1,11 @@
---- content/browser/renderer_host/render_process_host_impl.cc.orig 2017-07-25 21:04:55.000000000 +0200
-+++ content/browser/renderer_host/render_process_host_impl.cc 2017-08-02 01:03:34.751604000 +0200
-@@ -415,7 +415,7 @@
- return GetContentClient()->browser()->PreSpawnRenderer(policy);
+--- content/browser/renderer_host/render_process_host_impl.cc.orig 2017-12-15 02:04:17.000000000 +0100
++++ content/browser/renderer_host/render_process_host_impl.cc 2017-12-24 13:00:51.137885000 +0100
+@@ -420,7 +420,7 @@
}
--#elif defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#elif defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
+ #elif defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && \
+- !defined(OS_FUCHSIA)
++ !defined(OS_FUCHSIA) && !defined(OS_BSD)
ZygoteHandle GetZygote() override {
const base::CommandLine& browser_command_line =
*base::CommandLine::ForCurrentProcess();
diff --git a/www/chromium/files/patch-content_browser_tracing_tracing__controller__impl.cc b/www/chromium/files/patch-content_browser_tracing_tracing__controller__impl.cc
deleted file mode 100644
index 6867b7022008..000000000000
--- a/www/chromium/files/patch-content_browser_tracing_tracing__controller__impl.cc
+++ /dev/null
@@ -1,20 +0,0 @@
---- content/browser/tracing/tracing_controller_impl.cc.orig 2017-06-05 19:03:07 UTC
-+++ content/browser/tracing/tracing_controller_impl.cc
-@@ -412,7 +412,7 @@ void TracingControllerImpl::AddTraceMessageFilter(
- return;
- }
-
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- // On Linux the browser process dumps process metrics for child process due to
- // sandbox.
- tracing::ProcessMetricsMemoryDumpProvider::RegisterForProcess(
-@@ -440,7 +440,7 @@ void TracingControllerImpl::RemoveTraceMessageFilter(
- return;
- }
-
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
- tracing::ProcessMetricsMemoryDumpProvider::UnregisterForProcess(
- trace_message_filter->peer_pid());
- #endif
diff --git a/www/chromium/files/patch-content_browser_utility__process__host__impl.cc b/www/chromium/files/patch-content_browser_utility__process__host__impl.cc
index e3f2c306592b..7aca8a8ceef1 100644
--- a/www/chromium/files/patch-content_browser_utility__process__host__impl.cc
+++ b/www/chromium/files/patch-content_browser_utility__process__host__impl.cc
@@ -1,7 +1,7 @@
---- content/browser/utility_process_host_impl.cc.orig 2017-07-25 21:04:55.000000000 +0200
-+++ content/browser/utility_process_host_impl.cc 2017-08-02 01:11:47.902348000 +0200
-@@ -44,9 +44,9 @@
- #include "services/service_manager/public/cpp/interface_provider.h"
+--- content/browser/utility_process_host_impl.cc.orig 2017-12-15 02:04:17.000000000 +0100
++++ content/browser/utility_process_host_impl.cc 2017-12-24 13:10:10.983464000 +0100
+@@ -35,9 +35,9 @@
+ #include "services/service_manager/sandbox/sandbox_type.h"
#include "ui/base/ui_base_switches.h"
-#if defined(OS_POSIX) && !defined(OS_ANDROID) && !defined(OS_MACOSX)
@@ -12,44 +12,21 @@
#if defined(OS_WIN)
#include "sandbox/win/src/sandbox_policy.h"
-@@ -68,10 +68,10 @@
- launch_elevated_(launch_elevated)
- #elif defined(OS_POSIX)
- env_(env)
--#if !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#if !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
- ,
- no_sandbox_(no_sandbox)
--#endif // !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#endif // !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
- #endif // OS_WIN
- {}
-
-@@ -100,13 +100,13 @@
+@@ -96,7 +96,7 @@
#elif defined(OS_POSIX)
--#if !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#if !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
+-#if !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_FUCHSIA)
++#if !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_FUCHSIA) && !defined(OS_BSD)
ZygoteHandle GetZygote() override {
- if (no_sandbox_ || !exposed_dir_.empty())
- return nullptr;
+ if (service_manager::IsUnsandboxedSandboxType(sandbox_type_) ||
+ !exposed_dir_.empty()) {
+@@ -104,7 +104,7 @@
+ }
return GetGenericZygote();
}
--#endif // !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#endif // !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
+-#endif // !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_FUCHSIA)
++#endif // !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_FUCHSIA) && !defined(OS_BSD)
base::EnvironmentMap GetEnvironment() override { return env_; }
#endif // OS_WIN
-@@ -121,9 +121,9 @@
- bool launch_elevated_;
- #elif defined(OS_POSIX)
- base::EnvironmentMap env_;
--#if !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#if !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
- bool no_sandbox_;
--#endif // !defined(OS_MACOSX) && !defined(OS_ANDROID)
-+#endif // !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
- #endif // OS_WIN
- };
-
diff --git a/www/chromium/files/patch-content_common_BUILD.gn b/www/chromium/files/patch-content_common_BUILD.gn
index 985198742dc7..8757f3e25044 100644
--- a/www/chromium/files/patch-content_common_BUILD.gn
+++ b/www/chromium/files/patch-content_common_BUILD.gn
@@ -1,28 +1,20 @@
---- content/common/BUILD.gn.orig 2017-06-05 19:03:07 UTC
-+++ content/common/BUILD.gn
-@@ -508,7 +508,7 @@ source_set("common") {
- }
-
- if (!use_seccomp_bpf) {
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources -= [
- "sandbox_linux/bpf_cros_arm_gpu_policy_linux.cc",
- "sandbox_linux/bpf_cros_arm_gpu_policy_linux.h",
-@@ -522,6 +522,16 @@ source_set("common") {
- "sandbox_linux/bpf_utility_policy_linux.h",
- "sandbox_linux/sandbox_bpf_base_policy_linux.cc",
+--- content/common/BUILD.gn.orig 2018-01-04 21:05:50.000000000 +0100
++++ content/common/BUILD.gn 2018-01-21 00:08:52.884724000 +0100
+@@ -564,6 +564,17 @@
"sandbox_linux/sandbox_bpf_base_policy_linux.h",
-+ "sandbox_linux/sandbox_seccomp_bpf_linux.cc",
-+ "sandbox_linux/sandbox_seccomp_bpf_linux.h",
-+ ]
-+ }
+ ]
+ }
+ if (is_bsd) {
+ sources -= [
+ "quarantine/quarantine_linux.cc",
-+ "sandbox_linux/sandbox_linux.cc",
-+ "sandbox_linux/sandbox_linux.h",
++ "sandbox_linux/bpf_cdm_policy_linux.cc",
++ "sandbox_linux/bpf_pdf_compositor_policy_linux.cc",
+ "sandbox_linux/sandbox_init_linux.cc",
- ]
- }
- if (is_android) {
++ "sandbox_linux/sandbox_linux.cc",
++ "sandbox_linux/sandbox_seccomp_bpf_linux.cc",
++ "sandbox_linux/sandbox_debug_handling_linux.cc",
++ ]
++ }
+ }
+
+ if (is_mac) {
diff --git a/www/chromium/files/patch-content_common_content__switches__internal.cc b/www/chromium/files/patch-content_common_content__switches__internal.cc
index ad1b6c325127..306a28b86cd0 100644
--- a/www/chromium/files/patch-content_common_content__switches__internal.cc
+++ b/www/chromium/files/patch-content_common_content__switches__internal.cc
@@ -1,11 +1,11 @@
---- content/common/content_switches_internal.cc.orig 2017-06-05 19:03:07 UTC
-+++ content/common/content_switches_internal.cc
-@@ -27,7 +27,7 @@ const base::Feature kUseZoomForDsfEnabledByDefault {
+--- content/common/content_switches_internal.cc.orig 2017-12-15 02:04:17.000000000 +0100
++++ content/common/content_switches_internal.cc 2017-12-24 13:18:56.301831000 +0100
+@@ -41,7 +41,7 @@
#endif
bool IsUseZoomForDSFEnabledByDefault() {
--#if defined(OS_CHROMEOS) || defined(OS_LINUX)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX) || defined(OS_BSD)
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
return true;
#elif defined(OS_WIN)
return base::FeatureList::IsEnabled(kUseZoomForDsfEnabledByDefault);
diff --git a/www/chromium/files/patch-content_common_sandbox__linux_sandbox__debug__handling__linux.cc b/www/chromium/files/patch-content_common_sandbox__linux_sandbox__debug__handling__linux.cc
deleted file mode 100644
index fa3980d1e458..000000000000
--- a/www/chromium/files/patch-content_common_sandbox__linux_sandbox__debug__handling__linux.cc
+++ /dev/null
@@ -1,29 +0,0 @@
---- content/common/sandbox_linux/sandbox_debug_handling_linux.cc.orig 2017-06-05 19:03:07 UTC
-+++ content/common/sandbox_linux/sandbox_debug_handling_linux.cc
-@@ -7,7 +7,9 @@
- #include <errno.h>
- #include <signal.h>
- #include <stddef.h>
-+#if 0 // no OS_FREEBSD here?
- #include <sys/prctl.h>
-+#endif
- #include <unistd.h>
-
- #include "base/command_line.h"
-@@ -69,12 +71,16 @@ bool SandboxDebugHandling::SetDumpableStatusAndHandler
- return true;
- }
-
-+#if 0 // no OS_FREEBSD here?
- if (prctl(PR_SET_DUMPABLE, 0) != 0) {
- PLOG(ERROR) << "Failed to set non-dumpable flag";
- return false;
- }
-
- return prctl(PR_GET_DUMPABLE) == 0;
-+#else
-+ return false;
-+#endif
- }
-
- } // namespace content
diff --git a/www/chromium/files/patch-content_common_user_agent.cc b/www/chromium/files/patch-content_common_user_agent.cc
new file mode 100644
index 000000000000..834a1691682f
--- /dev/null
+++ b/www/chromium/files/patch-content_common_user_agent.cc
@@ -0,0 +1,17 @@
+--- content/common/user_agent.cc.orig 2017-12-23 22:30:16.333353000 +0100
++++ content/common/user_agent.cc 2017-12-23 22:32:27.429827000 +0100
+@@ -131,6 +131,14 @@
+ #endif
+ ); // NOLINT
+
++#if defined(OS_BSD)
++#if defined(__x86_64__)
++ base::StringAppendF(&os_cpu, "; Linux x86_64");
++#else
++ base::StringAppendF(&os_cpu, "; Linux i686");
++#endif
++#endif
++
+ return os_cpu;
+ }
+
diff --git a/www/chromium/files/patch-content_gpu_BUILD.gn b/www/chromium/files/patch-content_gpu_BUILD.gn
deleted file mode 100644
index b8bbfedfdda3..000000000000
--- a/www/chromium/files/patch-content_gpu_BUILD.gn
+++ /dev/null
@@ -1,10 +0,0 @@
---- content/gpu/BUILD.gn.orig 2017-06-05 19:03:07 UTC
-+++ content/gpu/BUILD.gn
-@@ -106,6 +106,7 @@ target(link_target_type, "gpu_sources") {
-
- if (use_x11) {
- deps += [ "//ui/events/platform/x11" ]
-+ configs += [ "//build/config/linux:x11" ]
- }
-
- if (use_ozone) {
diff --git a/www/chromium/files/patch-content_gpu_gpu__main.cc b/www/chromium/files/patch-content_gpu_gpu__main.cc
index d700d02df016..2a49d96a3641 100644
--- a/www/chromium/files/patch-content_gpu_gpu__main.cc
+++ b/www/chromium/files/patch-content_gpu_gpu__main.cc
@@ -1,29 +1,38 @@
---- content/gpu/gpu_main.cc.orig 2017-06-05 19:03:07 UTC
-+++ content/gpu/gpu_main.cc
-@@ -96,7 +96,7 @@ namespace content {
+--- content/gpu/gpu_main.cc.orig 2017-12-15 02:04:17.000000000 +0100
++++ content/gpu/gpu_main.cc 2017-12-24 13:25:17.551277000 +0100
+@@ -98,7 +98,7 @@
namespace {
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) && !defined(OS_BSD)
- bool StartSandboxLinux(gpu::GpuWatchdogThread*);
+ bool StartSandboxLinux(gpu::GpuWatchdogThread*, const gpu::GPUInfo*);
#elif defined(OS_WIN)
bool StartSandboxWindows(const sandbox::SandboxInterfaceInfo*);
-@@ -150,7 +150,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel
+@@ -156,7 +156,7 @@
- bool EnsureSandboxInitialized(
- gpu::GpuWatchdogThread* watchdog_thread) override {
+ bool EnsureSandboxInitialized(gpu::GpuWatchdogThread* watchdog_thread,
+ const gpu::GPUInfo* gpu_info) override {
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) && !defined(OS_BSD)
- return StartSandboxLinux(watchdog_thread);
+ return StartSandboxLinux(watchdog_thread, gpu_info);
#elif defined(OS_WIN)
return StartSandboxWindows(sandbox_info_);
-@@ -301,7 +301,7 @@ int GpuMain(const MainFunctionParams& parameters) {
+@@ -323,7 +323,7 @@
namespace {
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) && !defined(OS_BSD)
- bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdog_thread) {
+ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdog_thread,
+ const gpu::GPUInfo* gpu_info) {
TRACE_EVENT0("gpu,startup", "Initialize sandbox");
+@@ -347,7 +347,7 @@
+ return res;
+ }
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) && !defined(OS_BSD)
+
+ #if defined(OS_WIN)
+ bool StartSandboxWindows(const sandbox::SandboxInterfaceInfo* sandbox_info) {
diff --git a/www/chromium/files/patch-content_gpu_in__process__gpu__thread.cc b/www/chromium/files/patch-content_gpu_in__process__gpu__thread.cc
deleted file mode 100644
index 029f893c8946..000000000000
--- a/www/chromium/files/patch-content_gpu_in__process__gpu__thread.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- content/gpu/in_process_gpu_thread.cc.orig 2017-06-05 19:03:07 UTC
-+++ content/gpu/in_process_gpu_thread.cc
-@@ -55,8 +55,6 @@ void InProcessGpuThread::Init() {
- gpu::GPUInfo gpu_info;
- if (!gl::init::InitializeGLOneOff())
- VLOG(1) << "gl::init::InitializeGLOneOff failed";
-- else
-- gpu::CollectContextGraphicsInfo(&gpu_info);
-
- gpu::GpuFeatureInfo gpu_feature_info =
- gpu::GetGpuFeatureInfo(gpu_info, *base::CommandLine::ForCurrentProcess());
diff --git a/www/chromium/files/patch-content_ppapi_plugin_ppapi_plugin_main.cc b/www/chromium/files/patch-content_ppapi_plugin_ppapi_plugin_main.cc
new file mode 100644
index 000000000000..3eeb29f0f256
--- /dev/null
+++ b/www/chromium/files/patch-content_ppapi_plugin_ppapi_plugin_main.cc
@@ -0,0 +1,11 @@
+--- content/ppapi_plugin/ppapi_plugin_main.cc.orig 2018-01-20 16:16:54.514813000 +0100
++++ content/ppapi_plugin/ppapi_plugin_main.cc 2018-01-20 16:17:30.448565000 +0100
+@@ -122,6 +122,8 @@
+
+ #if defined(OS_LINUX)
+ LinuxSandbox::InitializeSandbox();
++#elif defined(OS_BSD)
++ NOTIMPLEMENTED();
+ #endif
+
+ ChildProcess ppapi_process;
diff --git a/www/chromium/files/patch-content_renderer_render__thread__impl.cc b/www/chromium/files/patch-content_renderer_render__thread__impl.cc
index 44a76844df29..7a95a80fbd78 100644
--- a/www/chromium/files/patch-content_renderer_render__thread__impl.cc
+++ b/www/chromium/files/patch-content_renderer_render__thread__impl.cc
@@ -1,6 +1,6 @@
---- content/renderer/render_thread_impl.cc.orig 2017-09-05 21:05:19.000000000 +0200
-+++ content/renderer/render_thread_impl.cc 2017-09-09 00:52:35.826914000 +0200
-@@ -220,12 +220,22 @@
+--- content/renderer/render_thread_impl.cc.orig 2017-12-15 02:04:18.000000000 +0100
++++ content/renderer/render_thread_impl.cc 2017-12-24 14:46:13.319958000 +0100
+@@ -219,12 +219,22 @@
#include "content/common/external_ipc_dumper.h"
#endif
@@ -23,7 +23,7 @@
using base::ThreadRestrictions;
using blink::WebDocument;
using blink::WebFrame;
-@@ -926,7 +936,7 @@
+@@ -929,7 +939,7 @@
GetConnector()->BindInterface(mojom::kBrowserServiceName,
mojo::MakeRequest(&storage_partition_service_));
@@ -32,16 +32,16 @@
ChildProcess::current()->SetIOThreadPriority(base::ThreadPriority::DISPLAY);
ChildThreadImpl::current()->SetThreadPriority(
categorized_worker_pool_->background_worker_thread_id(),
-@@ -1149,7 +1159,7 @@
- compositor_task_runner_->PostTask(
+@@ -1147,7 +1157,7 @@
FROM_HERE,
- base::Bind(base::IgnoreResult(&ThreadRestrictions::SetIOAllowed), false));
+ base::BindOnce(base::IgnoreResult(&ThreadRestrictions::SetIOAllowed),
+ false));
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
ChildThreadImpl::current()->SetThreadPriority(compositor_thread_->ThreadId(),
base::ThreadPriority::DISPLAY);
#endif
-@@ -1446,7 +1456,7 @@
+@@ -1458,7 +1468,7 @@
const bool enable_video_accelerator =
!cmd_line->HasSwitch(switches::kDisableAcceleratedVideoDecode);
const bool enable_gpu_memory_buffer_video_frames =
@@ -50,7 +50,7 @@
!cmd_line->HasSwitch(switches::kDisableGpuMemoryBufferVideoFrames) &&
!cmd_line->HasSwitch(switches::kDisableGpuCompositing) &&
!gpu_channel_host->gpu_info().software_rendering;
-@@ -1771,7 +1781,26 @@
+@@ -1778,7 +1788,26 @@
blink_stats.blink_gc_total_allocated_bytes / 1024;
std::unique_ptr<base::ProcessMetrics> metric(
base::ProcessMetrics::CreateCurrentProcessMetrics());
diff --git a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc
index 6e5157ab7768..cdc120291d08 100644
--- a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc
+++ b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc
@@ -1,6 +1,6 @@
---- content/renderer/renderer_blink_platform_impl.cc.orig 2017-06-05 19:03:07 UTC
-+++ content/renderer/renderer_blink_platform_impl.cc
-@@ -112,7 +112,7 @@
+--- content/renderer/renderer_blink_platform_impl.cc.orig 2017-12-15 02:04:18.000000000 +0100
++++ content/renderer/renderer_blink_platform_impl.cc 2017-12-31 05:15:48.537395000 +0100
+@@ -124,7 +124,7 @@
#if defined(OS_POSIX)
#include "base/file_descriptor_posix.h"
@@ -9,48 +9,48 @@
#include <map>
#include <string>
-@@ -206,7 +206,7 @@ class RendererBlinkPlatformImpl::FileUtilities : publi
- scoped_refptr<ThreadSafeSender> thread_safe_sender_;
+@@ -225,7 +225,7 @@
+ scoped_refptr<mojom::ThreadSafeFileUtilitiesHostPtr> file_utilities_host_;
};
--#if !defined(OS_ANDROID) && !defined(OS_WIN)
-+#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_BSD)
+-#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_FUCHSIA)
++#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_FUCHSIA) && !defined(OS_BSD)
class RendererBlinkPlatformImpl::SandboxSupport
: public blink::WebSandboxSupport {
public:
-@@ -251,7 +251,7 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl(
+@@ -267,7 +267,7 @@
+ default_task_runner_(renderer_scheduler->DefaultTaskRunner()),
web_scrollbar_behavior_(new WebScrollbarBehaviorImpl),
- renderer_scheduler_(renderer_scheduler),
- blink_interface_provider_(new BlinkInterfaceProviderImpl(connector)) {
--#if !defined(OS_ANDROID) && !defined(OS_WIN)
-+#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_BSD)
+ renderer_scheduler_(renderer_scheduler) {
+-#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_FUCHSIA)
++#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_FUCHSIA) && !defined(OS_BSD)
if (g_sandbox_enabled && sandboxEnabled()) {
sandbox_support_.reset(new RendererBlinkPlatformImpl::SandboxSupport);
} else {
-@@ -294,7 +294,7 @@ RendererBlinkPlatformImpl::~RendererBlinkPlatformImpl(
+@@ -316,7 +316,7 @@
}
void RendererBlinkPlatformImpl::Shutdown() {
--#if !defined(OS_ANDROID) && !defined(OS_WIN)
-+#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_BSD)
- // SandboxSupport contains a map of WebFontFamily objects, which hold
- // WebCStrings, which become invalidated when blink is shut down. Hence, we
- // need to clear that map now, just before blink::shutdown() is called.
-@@ -358,7 +358,7 @@ blink::WebFileUtilities* RendererBlinkPlatformImpl::Ge
+-#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_FUCHSIA)
++#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_FUCHSIA) && !defined(OS_BSD)
+ // SandboxSupport contains a map of WebFallbackFont objects, which hold
+ // WebStrings and WebVectors, which become invalidated when blink is shut
+ // down. Hence, we need to clear that map now, just before blink::shutdown()
+@@ -417,7 +417,7 @@
}
blink::WebSandboxSupport* RendererBlinkPlatformImpl::GetSandboxSupport() {
--#if defined(OS_ANDROID) || defined(OS_WIN)
-+#if defined(OS_ANDROID) || defined(OS_WIN) || defined(OS_BSD)
+-#if defined(OS_ANDROID) || defined(OS_WIN) || defined(OS_FUCHSIA)
++#if defined(OS_ANDROID) || defined(OS_WIN) || defined(OS_FUCHSIA) || defined(OS_BSD)
// These platforms do not require sandbox support.
return NULL;
#else
-@@ -565,7 +565,7 @@ bool RendererBlinkPlatformImpl::SandboxSupport::LoadFo
+@@ -610,7 +610,7 @@
return FontLoader::CGFontRefFromBuffer(font_data, font_data_size, out);
}
--#elif defined(OS_POSIX) && !defined(OS_ANDROID)
-+#elif defined(OS_POSIX) && !defined(OS_ANDROID) && !defined(OS_BSD)
+-#elif defined(OS_POSIX) && !defined(OS_ANDROID) && !defined(OS_FUCHSIA)
++#elif defined(OS_POSIX) && !defined(OS_ANDROID) && !defined(OS_FUCHSIA) && !defined(OS_BSD)
void RendererBlinkPlatformImpl::SandboxSupport::GetFallbackFontForCharacter(
blink::WebUChar32 character,
diff --git a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h
index 8937c53f20a0..8204fc563cc8 100644
--- a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h
+++ b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h
@@ -1,11 +1,11 @@
---- content/renderer/renderer_blink_platform_impl.h.orig 2017-06-05 19:03:07 UTC
-+++ content/renderer/renderer_blink_platform_impl.h
-@@ -258,7 +258,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : publi
+--- content/renderer/renderer_blink_platform_impl.h.orig 2017-12-15 02:04:18.000000000 +0100
++++ content/renderer/renderer_blink_platform_impl.h 2017-12-24 15:04:12.309104000 +0100
+@@ -286,7 +286,7 @@
class FileUtilities;
std::unique_ptr<FileUtilities> file_utilities_;
--#if !defined(OS_ANDROID) && !defined(OS_WIN)
-+#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_BSD)
+-#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_FUCHSIA)
++#if !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_FUCHSIA) && !defined(OS_BSD)
class SandboxSupport;
std::unique_ptr<SandboxSupport> sandbox_support_;
#endif
diff --git a/www/chromium/files/patch-content_renderer_renderer_main.cc b/www/chromium/files/patch-content_renderer_renderer_main.cc
index 9d2d427d393d..2c92bed474f6 100644
--- a/www/chromium/files/patch-content_renderer_renderer_main.cc
+++ b/www/chromium/files/patch-content_renderer_renderer_main.cc
@@ -1,5 +1,5 @@
---- content/renderer/renderer_main.cc.orig 2017-09-05 21:05:19.000000000 +0200
-+++ content/renderer/renderer_main.cc 2017-09-09 00:53:51.849087000 +0200
+--- content/renderer/renderer_main.cc.orig 2017-12-15 02:04:18.000000000 +0100
++++ content/renderer/renderer_main.cc 2017-12-31 04:55:48.524657000 +0100
@@ -34,12 +34,19 @@
#include "ppapi/features/features.h"
#include "third_party/WebKit/public/platform/scheduler/renderer/renderer_scheduler.h"
@@ -12,7 +12,7 @@
#endif // OS_ANDROID
+#if defined(OS_BSD)
-+#include "content/browser/renderer_host/render_sandbox_host_linux.h"
++#include "content/browser/sandbox_host_linux.h"
+#include "content/common/font_config_ipc_linux.h"
+#include "content/common/sandbox_linux/sandbox_linux.h"
+#endif
@@ -20,7 +20,7 @@
#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID)
#include "content/common/font_config_ipc_linux.h"
#include "content/common/sandbox_linux/sandbox_linux.h"
-@@ -190,9 +197,13 @@
+@@ -191,9 +198,13 @@
// is OK.
InitializeWebRtcModule();
#endif
@@ -35,7 +35,7 @@
// TODO(markus): Check if it is OK to unconditionally move this
// instruction down.
auto render_process = RenderProcessImpl::Create();
-@@ -202,7 +213,7 @@
+@@ -203,7 +214,7 @@
bool run_loop = true;
if (!no_sandbox)
run_loop = platform.EnableSandbox();
diff --git a/www/chromium/files/patch-content_shell_BUILD.gn b/www/chromium/files/patch-content_shell_BUILD.gn
deleted file mode 100644
index cc1c6d1c7ccc..000000000000
--- a/www/chromium/files/patch-content_shell_BUILD.gn
+++ /dev/null
@@ -1,38 +0,0 @@
---- content/shell/BUILD.gn.orig 2017-09-05 21:05:19.000000000 +0200
-+++ content/shell/BUILD.gn 2017-09-07 03:19:12.063954000 +0200
-@@ -313,7 +313,7 @@
- ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- deps += [
- "//third_party/fontconfig",
- "//ui/gfx:test_support",
-@@ -337,7 +337,7 @@
- ]
- }
-
-- if (is_posix && !is_mac && !is_fuchsia) {
-+ if (is_posix && !is_mac && !is_fuchsia && !is_bsd) {
- deps += [
- "//components/crash/content/app",
- "//components/crash/content/browser",
-@@ -385,7 +385,7 @@
- ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- deps += [ "//third_party/freetype" ]
- }
-
-@@ -560,7 +560,7 @@
- }
- }
-
-- if (is_linux && !is_component_build) {
-+ if ((is_linux || is_bsd) && !is_component_build) {
- # Set rpath to find our own libfreetype even in a non-component build.
- configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
- }
diff --git a/www/chromium/files/patch-content_shell_browser_shell__browser__main__parts.cc b/www/chromium/files/patch-content_shell_browser_shell__browser__main__parts.cc
index cbb1cb5f7dc6..365f1b1f6dcc 100644
--- a/www/chromium/files/patch-content_shell_browser_shell__browser__main__parts.cc
+++ b/www/chromium/files/patch-content_shell_browser_shell__browser__main__parts.cc
@@ -1,6 +1,6 @@
---- content/shell/browser/shell_browser_main_parts.cc.orig 2017-06-05 19:03:07 UTC
-+++ content/shell/browser/shell_browser_main_parts.cc
-@@ -46,7 +46,7 @@
+--- content/shell/browser/shell_browser_main_parts.cc.orig 2017-12-15 02:04:18.000000000 +0100
++++ content/shell/browser/shell_browser_main_parts.cc 2017-12-24 15:15:04.473424000 +0100
+@@ -49,7 +49,7 @@
#if defined(USE_AURA) && defined(USE_X11)
#include "ui/events/devices/x11/touch_factory_x11.h" // nogncheck
#endif
@@ -9,10 +9,10 @@
#include "ui/base/ime/input_method_initializer.h"
#endif
#if defined(OS_CHROMEOS)
-@@ -142,7 +142,7 @@ void ShellBrowserMainParts::PostMainMessageLoopStart()
- }
-
- void ShellBrowserMainParts::PreEarlyInitialization() {
+@@ -133,7 +133,7 @@
+ #if defined(USE_X11)
+ ui::SetDefaultX11ErrorHandlers();
+ #endif
-#if !defined(OS_CHROMEOS) && defined(USE_AURA) && defined(OS_LINUX)
+#if !defined(OS_CHROMEOS) && defined(USE_AURA) && (defined(OS_BSD) || defined(OS_LINUX))
ui::InitializeInputMethodForTesting();
diff --git a/www/chromium/files/patch-content_test_BUILD.gn b/www/chromium/files/patch-content_test_BUILD.gn
deleted file mode 100644
index e9290842b1f4..000000000000
--- a/www/chromium/files/patch-content_test_BUILD.gn
+++ /dev/null
@@ -1,52 +0,0 @@
---- content/test/BUILD.gn.orig 2017-06-15 21:03:05.000000000 +0200
-+++ content/test/BUILD.gn 2017-06-22 13:52:52.066701000 +0200
-@@ -815,7 +815,7 @@
- }
- }
-
-- if (is_android || is_linux || is_mac || is_win) {
-+ if (is_android || is_linux || is_bsd || is_mac || is_win) {
- data += [
- "$root_out_dir/content_shell.pak",
- "data/",
-@@ -1435,14 +1435,19 @@
- sources += [ "../common/quarantine/quarantine_unittest.cc" ]
- }
-
-+ if (is_bsd) {
-+ sources -= [
-+ "../browser/memory/test_memory_monitor.cc",
-+ "../common/quarantine/quarantine_linux_unittest.cc",
-+ ]
-+ }
-+
- # ChromeOS also defines linux but their memory-monitors conflict.
- if (is_chromeos) {
- sources += [ "../browser/memory/memory_monitor_chromeos_unittest.cc" ]
-- } else {
-- sources += [ "../browser/memory/memory_monitor_linux_unittest.cc" ]
- }
-
-- if (is_android || is_linux || is_mac || is_win) {
-+ if (is_android || is_linux || is_bsd || is_mac || is_win) {
- data = [
- "$root_out_dir/content_shell.pak",
- "data/",
-@@ -1657,7 +1662,7 @@
- "//ui/shell_dialogs:shell_dialogs",
- ]
-
-- if (is_linux || is_mac || is_win) {
-+ if (is_linux || is_bsd || is_mac || is_win) {
- sources +=
- [ "../browser/media/capture/desktop_capture_device_unittest.cc" ]
- deps += [ "//third_party/webrtc/modules/desktop_capture" ]
-@@ -1695,7 +1700,7 @@
- }
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- if (use_dbus) {
- deps += [ "//dbus:test_support" ]
- }
diff --git a/www/chromium/files/patch-content_test_content_test_suite.cc b/www/chromium/files/patch-content_test_content_test_suite.cc
new file mode 100644
index 000000000000..479bdc199172
--- /dev/null
+++ b/www/chromium/files/patch-content_test_content_test_suite.cc
@@ -0,0 +1,18 @@
+--- content/test/content_test_suite.cc.orig 2017-12-15 02:04:18.000000000 +0100
++++ content/test/content_test_suite.cc 2017-12-24 15:49:56.061177000 +0100
+@@ -87,6 +87,7 @@
+ // to initialize GL, so don't do it here.
+ base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
+ bool is_child_process = command_line->HasSwitch(switches::kTestChildProcess);
++#if !defined(OS_BSD)
+ if (!is_child_process) {
+ gpu::GPUInfo gpu_info;
+ gpu::CollectBasicGraphicsInfo(&gpu_info);
+@@ -99,6 +100,7 @@
+ gpu_feature_info.disabled_extensions);
+ gl::init::InitializeExtensionSettingsOneOffPlatform();
+ }
++#endif
+ testing::TestEventListeners& listeners =
+ testing::UnitTest::GetInstance()->listeners();
+ listeners.Append(new TestInitializationListener);
diff --git a/www/chromium/files/patch-content_test_suite.cc b/www/chromium/files/patch-content_test_suite.cc
deleted file mode 100644
index cb25cf9ebda6..000000000000
--- a/www/chromium/files/patch-content_test_suite.cc
+++ /dev/null
@@ -1,18 +0,0 @@
---- content/test/content_test_suite.cc.orig 2017-06-22 13:36:32.924786000 +0200
-+++ content/test/content_test_suite.cc 2017-06-22 13:39:16.176707000 +0200
-@@ -85,6 +85,7 @@
- // to initialize GL, so don't do it here.
- bool is_child_process = base::CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kTestChildProcess);
-+#if !defined(OS_BSD)
- if (!is_child_process) {
- gpu::GPUInfo gpu_info;
- gpu::CollectBasicGraphicsInfo(&gpu_info);
-@@ -92,6 +93,7 @@
- base::CommandLine::ForCurrentProcess());
- gl::GLSurfaceTestSupport::InitializeOneOff();
- }
-+#endif
- testing::TestEventListeners& listeners =
- testing::UnitTest::GetInstance()->listeners();
- listeners.Append(new TestInitializationListener);
diff --git a/www/chromium/files/patch-content_utility_utility_main.cc b/www/chromium/files/patch-content_utility_utility_main.cc
new file mode 100644
index 000000000000..674dacd2a4f1
--- /dev/null
+++ b/www/chromium/files/patch-content_utility_utility_main.cc
@@ -0,0 +1,11 @@
+--- content/utility/utility_main.cc.orig 2018-01-20 16:08:49.686959000 +0100
++++ content/utility/utility_main.cc 2018-01-20 16:09:13.242607000 +0100
+@@ -45,7 +45,7 @@
+ if (parameters.command_line.HasSwitch(switches::kUtilityStartupDialog))
+ WaitForDebugger("Utility");
+
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) && !defined(OS_BSD)
+ // Initializes the sandbox before any threads are created.
+ // TODO(jorgelo): move this after GTK initialization when we enable a strict
+ // Seccomp-BPF policy.
diff --git a/www/chromium/files/patch-device_BUILD.gn b/www/chromium/files/patch-device_BUILD.gn
deleted file mode 100644
index 54454bb8e67a..000000000000
--- a/www/chromium/files/patch-device_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- device/BUILD.gn.orig 2017-06-15 21:03:06.000000000 +0200
-+++ device/BUILD.gn 2017-06-16 17:58:33.422808000 +0200
-@@ -206,7 +206,7 @@
- ]
- }
-
-- if ((is_chromeos || is_linux) && use_dbus) {
-+ if ((is_chromeos || is_linux || is_bsd) && use_dbus) {
- configs += [ "//build/config/linux/dbus" ]
-
- sources += [
diff --git a/www/chromium/files/patch-device_gamepad_BUILD.gn b/www/chromium/files/patch-device_gamepad_BUILD.gn
deleted file mode 100644
index 651011e18606..000000000000
--- a/www/chromium/files/patch-device_gamepad_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- device/gamepad/BUILD.gn.orig 2017-09-07 07:21:11.763066000 +0200
-+++ device/gamepad/BUILD.gn 2017-09-07 07:50:31.557057000 +0200
-@@ -72,7 +72,7 @@
- cflags = [ "/wd4267" ] # conversion from 'size_t' (64 bit) to 'type'(32 bit).
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- if (use_udev) {
- deps += [ "//device/udev_linux" ]
- } else {
diff --git a/www/chromium/files/patch-device_geolocation_BUILD.gn b/www/chromium/files/patch-device_geolocation_BUILD.gn
deleted file mode 100644
index 1f4d0ae14b36..000000000000
--- a/www/chromium/files/patch-device_geolocation_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- device/geolocation/BUILD.gn.orig 2017-04-19 19:06:34 UTC
-+++ device/geolocation/BUILD.gn
-@@ -89,7 +89,7 @@ component("geolocation") {
- if (is_android) {
- sources -= [ "wifi_data_provider_common.cc" ]
- }
-- if (is_chromeos || (is_linux && !use_dbus)) {
-+ if (is_chromeos || (is_linux && !use_dbus) || is_bsd) {
- sources -= [ "wifi_data_provider_linux.cc" ]
- }
- if (is_linux && use_dbus) {
diff --git a/www/chromium/files/patch-device_geolocation_location__arbitrator.cc b/www/chromium/files/patch-device_geolocation_location__arbitrator.cc
index 11518c5e88f2..873d77eb2e4c 100644
--- a/www/chromium/files/patch-device_geolocation_location__arbitrator.cc
+++ b/www/chromium/files/patch-device_geolocation_location__arbitrator.cc
@@ -1,11 +1,11 @@
---- device/geolocation/location_arbitrator.cc.orig 2017-06-05 19:03:07 UTC
-+++ device/geolocation/location_arbitrator.cc
-@@ -182,7 +182,7 @@ LocationArbitrator::NewNetworkLocationProvider(
-
+--- device/geolocation/location_arbitrator.cc.orig 2017-12-15 02:04:18.000000000 +0100
++++ device/geolocation/location_arbitrator.cc 2017-12-24 15:54:40.400280000 +0100
+@@ -173,7 +173,7 @@
std::unique_ptr<LocationProvider>
LocationArbitrator::NewSystemLocationProvider() {
--#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
-+#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD)
+ #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \
+- defined(OS_FUCHSIA)
++ defined(OS_FUCHSIA) || defined(OS_BSD)
return nullptr;
#else
return device::NewSystemLocationProvider();
diff --git a/www/chromium/files/patch-device_hid_BUILD.gn b/www/chromium/files/patch-device_hid_BUILD.gn
index 574f243cf327..1294a34d2937 100644
--- a/www/chromium/files/patch-device_hid_BUILD.gn
+++ b/www/chromium/files/patch-device_hid_BUILD.gn
@@ -1,7 +1,7 @@
---- device/hid/BUILD.gn.orig 2017-12-03 15:37:09.320721000 -0800
-+++ device/hid/BUILD.gn 2017-12-03 15:37:32.146570000 -0800
-@@ -63,6 +63,21 @@
- ]
+--- device/hid/BUILD.gn.orig 2018-01-26 21:56:57.916504000 +0100
++++ device/hid/BUILD.gn 2018-01-26 21:57:24.627778000 +0100
+@@ -66,6 +66,19 @@
+ deps += [ "//device/udev_linux" ]
}
+ if (is_bsd) {
@@ -12,8 +12,6 @@
+ sources += [
+ "hid_connection_freebsd.cc",
+ "hid_connection_freebsd.h",
-+ "hid_device_info_freebsd.cc",
-+ "hid_device_info_freebsd.h",
+ "hid_service_freebsd.cc",
+ "hid_service_freebsd.h",
+ ]
diff --git a/www/chromium/files/patch-device_hid_hid__connection__freebsd.cc b/www/chromium/files/patch-device_hid_hid__connection__freebsd.cc
index 2528847fd671..79ec5e4acb2f 100644
--- a/www/chromium/files/patch-device_hid_hid__connection__freebsd.cc
+++ b/www/chromium/files/patch-device_hid_hid__connection__freebsd.cc
@@ -1,6 +1,6 @@
---- device/hid/hid_connection_freebsd.cc.orig 2017-12-03 15:37:32.146994000 -0800
-+++ device/hid/hid_connection_freebsd.cc 2017-12-03 15:37:32.154605000 -0800
-@@ -0,0 +1,278 @@
+--- device/hid/hid_connection_freebsd.cc.orig 2018-01-26 21:53:10.787158000 +0100
++++ device/hid/hid_connection_freebsd.cc 2018-01-26 21:53:10.788129000 +0100
+@@ -0,0 +1,280 @@
+// Copyright (c) 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -54,7 +54,7 @@
+
+ void Write(scoped_refptr<net::IOBuffer> buffer,
+ size_t size,
-+ const WriteCallback& callback) {
++ WriteCallback callback) {
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+ char *data = buffer->data();
+ // if report id is 0, it shouldn't be included
@@ -66,20 +66,20 @@
+ ssize_t result = HANDLE_EINTR(write(fd_.get(), data, size));
+ if (result < 0) {
+ HID_PLOG(EVENT) << "Write failed";
-+ origin_task_runner_->PostTask(FROM_HERE, base::Bind(callback, false));
++ origin_task_runner_->PostTask(FROM_HERE, base::BindOnce(std::move(callback), false));
+ } else {
+ if (static_cast<size_t>(result) != size)
+ HID_LOG(EVENT) << "Incomplete HID write: " << result << " != " << size;
-+ origin_task_runner_->PostTask(FROM_HERE, base::Bind(callback, true));
++ origin_task_runner_->PostTask(FROM_HERE, base::BindOnce(std::move(callback), true));
+ }
+ }
+
+ void GetFeatureReport(uint8_t report_id,
+ scoped_refptr<net::IOBufferWithSize> buffer,
-+ const ReadCallback& callback) {
++ ReadCallback callback) {
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+ struct usb_gen_descriptor ugd;
-+ ugd.ugd_report_type = UHID_FEATURE_REPORT;
++ ugd.ugd_report_type = UHID_FEATURE_REPORT;
+ ugd.ugd_data = buffer->data();
+ ugd.ugd_maxlen = buffer->size();
+ int result = HANDLE_EINTR(
@@ -87,23 +87,23 @@
+ if (result < 0) {
+ HID_PLOG(EVENT) << "Failed to get feature report";
+ origin_task_runner_->PostTask(FROM_HERE,
-+ base::Bind(callback, false, nullptr, 0));
++ base::BindOnce(std::move(callback), false, nullptr, 0));
+ } else if (result == 0) {
+ HID_LOG(EVENT) << "Get feature result too short.";
+ origin_task_runner_->PostTask(FROM_HERE,
-+ base::Bind(callback, false, nullptr, 0));
++ base::BindOnce(std::move(callback), false, nullptr, 0));
+ } else {
+ origin_task_runner_->PostTask(FROM_HERE,
-+ base::Bind(callback, true, buffer, result));
++ base::BindOnce(std::move(callback), true, buffer, result));
+ }
+ }
+
+ void SendFeatureReport(scoped_refptr<net::IOBuffer> buffer,
+ size_t size,
-+ const WriteCallback& callback) {
++ WriteCallback callback) {
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+ struct usb_gen_descriptor ugd;
-+ ugd.ugd_report_type = UHID_FEATURE_REPORT;
++ ugd.ugd_report_type = UHID_FEATURE_REPORT;
+ ugd.ugd_data = buffer->data();
+ ugd.ugd_maxlen = size;
+ // FreeBSD does not require report id if it's not used
@@ -118,9 +118,11 @@
+ ioctl(fd_.get(), USB_SET_REPORT, &ugd));
+ if (result < 0) {
+ HID_PLOG(EVENT) << "Failed to send feature report";
-+ origin_task_runner_->PostTask(FROM_HERE, base::Bind(callback, false));
++ origin_task_runner_->PostTask(FROM_HERE,
++ base::BindOnce(std::move(callback), false));
+ } else {
-+ origin_task_runner_->PostTask(FROM_HERE, base::Bind(callback, true));
++ origin_task_runner_->PostTask(FROM_HERE,
++ base::BindOnce(std::move(callback), true));
+ }
+ }
+
@@ -157,7 +159,7 @@
+ }
+
+ origin_task_runner_->PostTask(
-+ FROM_HERE, base::Bind(&HidConnectionFreeBSD::ProcessInputReport,
++ FROM_HERE, base::BindOnce(&HidConnectionFreeBSD::ProcessInputReport,
+ connection_, buffer, bytes_read));
+ }
+
@@ -182,8 +184,8 @@
+ helper_ = base::MakeUnique<BlockingTaskHelper>(std::move(fd), device_info,
+ weak_factory_.GetWeakPtr());
+ blocking_task_runner_->PostTask(
-+ FROM_HERE,
-+ base::Bind(&BlockingTaskHelper::Start, base::Unretained(helper_.get())));
++ FROM_HERE, base::BindOnce(&BlockingTaskHelper::Start,
++ base::Unretained(helper_.get())));
+}
+
+HidConnectionFreeBSD::~HidConnectionFreeBSD() {}
@@ -196,31 +198,30 @@
+ blocking_task_runner_->DeleteSoon(FROM_HERE, helper_.release());
+
+ while (!pending_reads_.empty()) {
-+ pending_reads_.front().callback.Run(false, NULL, 0);
++ std::move(pending_reads_.front().callback).Run(false, NULL, 0);
+ pending_reads_.pop();
+ }
+}
+
-+void HidConnectionFreeBSD::PlatformRead(const ReadCallback& callback) {
-+ DCHECK(thread_checker().CalledOnValidThread());
++void HidConnectionFreeBSD::PlatformRead(ReadCallback callback) {
+ PendingHidRead pending_read;
-+ pending_read.callback = callback;
-+ pending_reads_.push(pending_read);
++ pending_read.callback = std::move(callback);
++ pending_reads_.push(std::move(pending_read));
+ ProcessReadQueue();
+}
+
+void HidConnectionFreeBSD::PlatformWrite(scoped_refptr<net::IOBuffer> buffer,
+ size_t size,
-+ const WriteCallback& callback) {
++ WriteCallback callback) {
+
+ blocking_task_runner_->PostTask(
+ FROM_HERE,
-+ base::Bind(&BlockingTaskHelper::Write, base::Unretained(helper_.get()),
-+ buffer, size, callback));
++ base::BindOnce(&BlockingTaskHelper::Write, base::Unretained(helper_.get()),
++ buffer, size, std::move(callback)));
+}
+
+void HidConnectionFreeBSD::PlatformGetFeatureReport(uint8_t report_id,
-+ const ReadCallback& callback) {
++ ReadCallback callback) {
+ // The first byte of the destination buffer is the report ID being requested
+ // and is overwritten by the feature report.
+ DCHECK_GT(device_info()->max_feature_report_size(), 0u);
@@ -231,18 +232,19 @@
+
+ blocking_task_runner_->PostTask(
+ FROM_HERE,
-+ base::Bind(&BlockingTaskHelper::GetFeatureReport,
-+ base::Unretained(helper_.get()), report_id, buffer, callback));
++ base::BindOnce(&BlockingTaskHelper::GetFeatureReport,
++ base::Unretained(helper_.get()), report_id,
++ buffer, std::move(callback)));
+}
+
+void HidConnectionFreeBSD::PlatformSendFeatureReport(
+ scoped_refptr<net::IOBuffer> buffer,
+ size_t size,
-+ const WriteCallback& callback) {
++ WriteCallback callback) {
+ blocking_task_runner_->PostTask(
+ FROM_HERE,
-+ base::Bind(&BlockingTaskHelper::SendFeatureReport,
-+ base::Unretained(helper_.get()), buffer, size, callback));
++ base::BindOnce(&BlockingTaskHelper::SendFeatureReport,
++ base::Unretained(helper_.get()), buffer, size, std::move(callback)));
+}
+
+void HidConnectionFreeBSD::ProcessInputReport(
@@ -269,12 +271,12 @@
+ // during the loop.
+ scoped_refptr<HidConnectionFreeBSD> self(this);
+ while (pending_reads_.size() && pending_reports_.size()) {
-+ PendingHidRead read = pending_reads_.front();
-+ PendingHidReport report = pending_reports_.front();
++ PendingHidRead read = std::move(pending_reads_.front());
++ PendingHidReport report = std::move(pending_reports_.front());
+
+ pending_reads_.pop();
+ pending_reports_.pop();
-+ read.callback.Run(true, report.buffer, report.size);
++ std::move(read.callback).Run(true, std::move(report.buffer), report.size);
+ }
+}
+
diff --git a/www/chromium/files/patch-device_hid_hid__connection__freebsd.h b/www/chromium/files/patch-device_hid_hid__connection__freebsd.h
index 20abc9c5d7d2..e4d184ffcb5c 100644
--- a/www/chromium/files/patch-device_hid_hid__connection__freebsd.h
+++ b/www/chromium/files/patch-device_hid_hid__connection__freebsd.h
@@ -1,5 +1,5 @@
---- device/hid/hid_connection_freebsd.h.orig 2017-12-03 15:37:32.155357000 -0800
-+++ device/hid/hid_connection_freebsd.h 2017-12-03 15:37:32.159062000 -0800
+--- device/hid/hid_connection_freebsd.h.orig 2018-01-26 21:53:10.788319000 +0100
++++ device/hid/hid_connection_freebsd.h 2018-01-26 21:53:10.788634000 +0100
@@ -0,0 +1,76 @@
+// Copyright (c) 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
@@ -44,15 +44,15 @@
+
+ // HidConnection implementation.
+ void PlatformClose() override;
-+ void PlatformRead(const ReadCallback& callback) override;
++ void PlatformRead(ReadCallback callback) override;
+ void PlatformWrite(scoped_refptr<net::IOBuffer> buffer,
+ size_t size,
-+ const WriteCallback& callback) override;
++ WriteCallback callback) override;
+ void PlatformGetFeatureReport(uint8_t report_id,
-+ const ReadCallback& callback) override;
++ ReadCallback callback) override;
+ void PlatformSendFeatureReport(scoped_refptr<net::IOBuffer> buffer,
+ size_t size,
-+ const WriteCallback& callback) override;
++ WriteCallback callback) override;
+ void ProcessInputReport(scoped_refptr<net::IOBuffer> buffer, size_t size);
+ void ProcessReadQueue();
+
diff --git a/www/chromium/files/patch-device_hid_hid__device__info__freebsd.cc b/www/chromium/files/patch-device_hid_hid__device__info__freebsd.cc
deleted file mode 100644
index dad4fd5a96bf..000000000000
--- a/www/chromium/files/patch-device_hid_hid__device__info__freebsd.cc
+++ /dev/null
@@ -1,33 +0,0 @@
---- device/hid/hid_device_info_freebsd.cc.orig 2017-12-03 15:37:32.159794000 -0800
-+++ device/hid/hid_device_info_freebsd.cc 2017-12-03 15:37:32.162092000 -0800
-@@ -0,0 +1,30 @@
-+// Copyright 2015 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+#include "hid_device_info_freebsd.h"
-+
-+namespace device {
-+
-+HidDeviceInfoFreeBSD::HidDeviceInfoFreeBSD(
-+ const HidDeviceId& device_id,
-+ const std::string& device_node,
-+ uint16_t vendor_id,
-+ uint16_t product_id,
-+ const std::string& product_name,
-+ const std::string& serial_number,
-+ HidBusType bus_type,
-+ const std::vector<uint8_t> report_descriptor)
-+ : HidDeviceInfo(device_id,
-+ vendor_id,
-+ product_id,
-+ product_name,
-+ serial_number,
-+ bus_type,
-+ report_descriptor),
-+ device_node_(device_node) {}
-+
-+HidDeviceInfoFreeBSD::~HidDeviceInfoFreeBSD() {
-+}
-+
-+} // namespace device
diff --git a/www/chromium/files/patch-device_hid_hid__device__info__freebsd.h b/www/chromium/files/patch-device_hid_hid__device__info__freebsd.h
deleted file mode 100644
index c2a0494becef..000000000000
--- a/www/chromium/files/patch-device_hid_hid__device__info__freebsd.h
+++ /dev/null
@@ -1,38 +0,0 @@
---- device/hid/hid_device_info_freebsd.h.orig 2017-12-03 15:37:32.162846000 -0800
-+++ device/hid/hid_device_info_freebsd.h 2017-12-03 15:37:32.165247000 -0800
-@@ -0,0 +1,35 @@
-+// Copyright 2015 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+#ifndef DEVICE_HID_HID_DEVICE_INFO_LINUX_H_
-+#define DEVICE_HID_HID_DEVICE_INFO_LINUX_H_
-+
-+#include <stdint.h>
-+
-+#include "device/hid/hid_device_info.h"
-+
-+namespace device {
-+
-+class HidDeviceInfoFreeBSD : public HidDeviceInfo {
-+ public:
-+ HidDeviceInfoFreeBSD(const HidDeviceId& device_id,
-+ const std::string& device_node,
-+ uint16_t vendor_id,
-+ uint16_t product_id,
-+ const std::string& product_name,
-+ const std::string& serial_number,
-+ HidBusType bus_type,
-+ const std::vector<uint8_t> report_descriptor);
-+
-+ const std::string& device_node() const { return device_node_; }
-+
-+ private:
-+ ~HidDeviceInfoFreeBSD() override;
-+
-+ std::string device_node_;
-+};
-+
-+} // namespace device
-+
-+#endif // DEVICE_HID_HID_DEVICE_INFO_LINUX_H_
diff --git a/www/chromium/files/patch-device_hid_hid__service__freebsd.cc b/www/chromium/files/patch-device_hid_hid__service__freebsd.cc
index d3e77324fcb9..34c3fb6b2340 100644
--- a/www/chromium/files/patch-device_hid_hid__service__freebsd.cc
+++ b/www/chromium/files/patch-device_hid_hid__service__freebsd.cc
@@ -1,6 +1,6 @@
---- device/hid/hid_service_freebsd.cc.orig 2017-12-03 15:37:32.168519000 -0800
-+++ device/hid/hid_service_freebsd.cc 2017-12-03 15:37:32.179514000 -0800
-@@ -0,0 +1,370 @@
+--- device/hid/hid_service_freebsd.cc.orig 2018-01-26 21:53:10.804422000 +0100
++++ device/hid/hid_service_freebsd.cc 2018-01-26 21:53:10.805522000 +0100
+@@ -0,0 +1,371 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -34,14 +34,13 @@
+#include "base/threading/thread_task_runner_handle.h"
+#include "components/device_event_log/device_event_log.h"
+#include "device/hid/hid_connection_freebsd.h"
-+#include "device/hid/hid_device_info_freebsd.h"
+
+const int kMaxPermissionChecks = 5;
+
+namespace device {
+
+struct HidServiceFreeBSD::ConnectParams {
-+ ConnectParams(scoped_refptr<HidDeviceInfoFreeBSD> device_info,
++ ConnectParams(scoped_refptr<HidDeviceInfo> device_info,
+ const ConnectCallback& callback)
+ : device_info(std::move(device_info)),
+ callback(callback),
@@ -50,7 +49,7 @@
+ base::CreateSequencedTaskRunnerWithTraits(kBlockingTaskTraits)) {}
+ ~ConnectParams() {}
+
-+ scoped_refptr<HidDeviceInfoFreeBSD> device_info;
++ scoped_refptr<HidDeviceInfo> device_info;
+ ConnectCallback callback;
+ scoped_refptr<base::SequencedTaskRunner> task_runner;
+ scoped_refptr<base::SequencedTaskRunner> blocking_task_runner;
@@ -160,11 +159,10 @@
+ return;
+ }
+
-+ scoped_refptr<HidDeviceInfoFreeBSD> device_info(new HidDeviceInfoFreeBSD(
-+ device_id, device_node, vendor_id, product_id, product_name,
-+ serial_number,
-+ kHIDBusTypeUSB,
-+ report_descriptor));
++ scoped_refptr<HidDeviceInfo> device_info(new HidDeviceInfo(
++ device_id, vendor_id, product_id, product_name, serial_number,
++ device::mojom::HidBusType::kHIDBusTypeUSB,
++ report_descriptor, device_node));
+
+ task_runner_->PostTask(FROM_HERE, base::Bind(&HidServiceFreeBSD::AddDevice,
+ service_, device_info));
@@ -241,7 +239,7 @@
+ devd_buffer_->data()[bytes_read] = 0;
+ char *data = devd_buffer_->data();
+ // It may take some time for devd to change permissions
-+ // on /dev/uhidX node. So do not fail immediately if
++ // on /dev/uhidX node. So do not fail immediately if
+ // open fail. Retry each second for kMaxPermissionChecks
+ // times before giving up entirely
+ if (base::StartsWith(data, "+uhid", base::CompareCase::SENSITIVE)) {
@@ -252,7 +250,7 @@
+ if (HaveReadWritePermissions(device_name))
+ OnDeviceAdded(parts[0].substr(1));
+ else {
-+ // Do not re-add to checks
++ // Do not re-add to checks
+ if (permissions_checks_attempts_.find(device_name) == permissions_checks_attempts_.end()) {
+ permissions_checks_attempts_.insert(std::pair<std::string, int>(device_name, kMaxPermissionChecks));
+ timer_->Start(FROM_HERE, base::TimeDelta::FromSeconds(1),
@@ -307,6 +305,10 @@
+ blocking_task_runner_->DeleteSoon(FROM_HERE, helper_.release());
+}
+
++base::WeakPtr<HidService> HidServiceFreeBSD::GetWeakPtr() {
++ return weak_factory_.GetWeakPtr();
++}
++
+// static
+void HidServiceFreeBSD::OpenOnBlockingThread(
+ std::unique_ptr<ConnectParams> params) {
@@ -329,19 +331,18 @@
+ FinishOpen(std::move(params));
+}
+
-+void HidServiceFreeBSD::Connect(const HidDeviceId& device_id,
++void HidServiceFreeBSD::Connect(const std::string& device_guid,
+ const ConnectCallback& callback) {
+ DCHECK(thread_checker_.CalledOnValidThread());
+
-+ const auto& map_entry = devices().find(device_id);
++ const auto& map_entry = devices().find(device_guid);
+ if (map_entry == devices().end()) {
+ base::ThreadTaskRunnerHandle::Get()->PostTask(
+ FROM_HERE, base::Bind(callback, nullptr));
+ return;
+ }
+
-+ scoped_refptr<HidDeviceInfoFreeBSD> device_info =
-+ static_cast<HidDeviceInfoFreeBSD*>(map_entry->second.get());
++ scoped_refptr<HidDeviceInfo> device_info = map_entry->second;
+
+ auto params = base::MakeUnique<ConnectParams>(device_info, callback);
+
diff --git a/www/chromium/files/patch-device_hid_hid__service__freebsd.h b/www/chromium/files/patch-device_hid_hid__service__freebsd.h
index 0d70b3d8470a..7a93c5ce3a6d 100644
--- a/www/chromium/files/patch-device_hid_hid__service__freebsd.h
+++ b/www/chromium/files/patch-device_hid_hid__service__freebsd.h
@@ -1,6 +1,6 @@
---- device/hid/hid_service_freebsd.h.orig 2017-12-03 15:37:32.180261000 -0800
-+++ device/hid/hid_service_freebsd.h 2017-12-03 15:37:32.183647000 -0800
-@@ -0,0 +1,47 @@
+--- device/hid/hid_service_freebsd.h.orig 2018-01-26 21:53:10.805771000 +0100
++++ device/hid/hid_service_freebsd.h 2018-01-26 21:53:10.805991000 +0100
+@@ -0,0 +1,48 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -24,8 +24,9 @@
+ HidServiceFreeBSD();
+ ~HidServiceFreeBSD() override;
+
-+ void Connect(const HidDeviceId& device_id,
++ void Connect(const std::string& device_guid,
+ const ConnectCallback& connect) override;
++ base::WeakPtr<HidService> GetWeakPtr() override;
+
+ private:
+ struct ConnectParams;
diff --git a/www/chromium/files/patch-device_serial_BUILD.gn b/www/chromium/files/patch-device_serial_BUILD.gn
index a0c73286fa1d..95bf26832ae0 100644
--- a/www/chromium/files/patch-device_serial_BUILD.gn
+++ b/www/chromium/files/patch-device_serial_BUILD.gn
@@ -1,24 +1,25 @@
---- device/serial/BUILD.gn.orig 2017-06-05 19:03:07 UTC
-+++ device/serial/BUILD.gn
-@@ -6,7 +6,7 @@ import("//build/config/features.gni")
+--- device/serial/BUILD.gn.orig 2017-12-15 02:04:18.000000000 +0100
++++ device/serial/BUILD.gn 2017-12-25 06:34:10.834395000 +0100
+@@ -6,7 +6,7 @@
import("//mojo/public/tools/bindings/mojom.gni")
# Library works only on desktop platforms.
--assert(is_win || is_linux || is_mac)
-+assert(is_win || is_linux || is_bsd || is_mac)
+-if (is_win || is_linux || is_mac) {
++if (is_win || is_linux || is_mac || is_bsd) {
+ config("platform_support") {
+ visibility = [ ":serial" ]
+ if (is_win) {
+@@ -57,6 +57,13 @@
+ "//net",
+ "//third_party/re2",
+ ]
++
++ if (is_bsd) {
++ sources -= [
++ "serial_device_enumerator_linux.cc",
++ "serial_device_enumerator_linux.h",
++ ]
++ }
- config("platform_support") {
- visibility = [ ":serial" ]
-@@ -54,6 +54,12 @@ static_library("serial") {
-
- if (use_udev) {
- deps += [ "//device/udev_linux" ]
-+ }
-+ if (is_bsd) {
-+ sources -= [
-+ "serial_device_enumerator_linux.cc",
-+ "serial_device_enumerator_linux.h"
-+ ]
- }
- if (is_chromeos) {
- deps += [
+ if (use_udev) {
+ deps += [ "//device/udev_linux" ]
diff --git a/www/chromium/files/patch-extensions_browser_api_messaging_message_service.cc b/www/chromium/files/patch-extensions_browser_api_messaging_message_service.cc
new file mode 100644
index 000000000000..3f7cf8b54963
--- /dev/null
+++ b/www/chromium/files/patch-extensions_browser_api_messaging_message_service.cc
@@ -0,0 +1,20 @@
+--- extensions/browser/api/messaging/message_service.cc.orig 2017-12-24 16:01:52.241792000 +0100
++++ extensions/browser/api/messaging/message_service.cc 2017-12-24 16:02:30.296242000 +0100
+@@ -59,7 +59,7 @@
+
+ const char kReceivingEndDoesntExistError[] =
+ "Could not establish connection. Receiving end does not exist.";
+-#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 kMissingPermissionError[] =
+ "Access to native messaging requires nativeMessaging permission.";
+ const char kProhibitedByPoliciesError[] =
+@@ -330,7 +330,7 @@
+ if (!source)
+ 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 =
diff --git a/www/chromium/files/patch-extensions_browser_api_networking__private_networking__private_delegate_factory.cc b/www/chromium/files/patch-extensions_browser_api_networking__private_networking__private_delegate_factory.cc
new file mode 100644
index 000000000000..6e4e78c45718
--- /dev/null
+++ b/www/chromium/files/patch-extensions_browser_api_networking__private_networking__private_delegate_factory.cc
@@ -0,0 +1,20 @@
+--- extensions/browser/api/networking_private/networking_private_delegate_factory.cc.orig 2018-01-21 13:32:48.139964000 +0100
++++ extensions/browser/api/networking_private/networking_private_delegate_factory.cc 2018-01-21 13:33:33.051307000 +0100
+@@ -11,7 +11,7 @@
+
+ #if defined(OS_CHROMEOS)
+ #include "extensions/browser/api/networking_private/networking_private_chromeos.h"
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_BSD)
+ #include "extensions/browser/api/networking_private/networking_private_linux.h"
+ #elif defined(OS_WIN) || defined(OS_MACOSX)
+ #include "components/wifi/wifi_service.h"
+@@ -61,7 +61,7 @@
+ NetworkingPrivateDelegate* delegate;
+ #if defined(OS_CHROMEOS)
+ delegate = new NetworkingPrivateChromeOS(browser_context);
+-#elif defined(OS_LINUX)
++#elif defined(OS_LINUX) || defined(OS_BSD)
+ delegate = new NetworkingPrivateLinux();
+ #elif defined(OS_WIN) || defined(OS_MACOSX)
+ std::unique_ptr<wifi::WiFiService> wifi_service(wifi::WiFiService::Create());
diff --git a/www/chromium/files/patch-extensions_browser_api_serial_serial__api.cc b/www/chromium/files/patch-extensions_browser_api_serial_serial__api.cc
deleted file mode 100644
index f6c7b0757d78..000000000000
--- a/www/chromium/files/patch-extensions_browser_api_serial_serial__api.cc
+++ /dev/null
@@ -1,16 +0,0 @@
---- extensions/browser/api/serial/serial_api.cc.orig 2017-06-05 19:03:07 UTC
-+++ extensions/browser/api/serial/serial_api.cc
-@@ -86,11 +86,13 @@ bool SerialGetDevicesFunction::Prepare() {
- void SerialGetDevicesFunction::Work() {
- DCHECK_CURRENTLY_ON(BrowserThread::FILE);
-
-+#if !defined(OS_BSD)
- std::unique_ptr<device::SerialDeviceEnumerator> enumerator =
- device::SerialDeviceEnumerator::Create();
- std::vector<device::serial::DeviceInfoPtr> devices = enumerator->GetDevices();
- results_ = serial::GetDevices::Results::Create(
- mojo::ConvertTo<std::vector<serial::DeviceInfo>>(devices));
-+#endif
- }
-
- SerialConnectFunction::SerialConnectFunction() {
diff --git a/www/chromium/files/patch-extensions_common_api__permission_features.json b/www/chromium/files/patch-extensions_common_api__permission_features.json
new file mode 100644
index 000000000000..eeabd65225a2
--- /dev/null
+++ b/www/chromium/files/patch-extensions_common_api__permission_features.json
@@ -0,0 +1,29 @@
+--- extensions/common/api/_permission_features.json.orig 2018-01-21 13:35:05.074386000 +0100
++++ extensions/common/api/_permission_features.json 2018-01-21 13:36:11.759479000 +0100
+@@ -128,7 +128,7 @@
+ "bluetoothPrivate": {
+ "channel": "stable",
+ "extension_types": ["platform_app"],
+- "platforms": ["chromeos", "win", "mac", "linux"],
++ "platforms": ["chromeos", "win", "mac", "linux", "bsd"],
+ "whitelist": [
+ "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80", // http://crbug.com/387169
+ "A3BC37E2148AC4E99BE4B16AF9D42DD1E592BBBE", // http://crbug.com/387169
+@@ -422,7 +422,7 @@
+ }, {
+ "channel": "stable",
+ "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
+- "platforms": ["chromeos", "mac", "win", "linux"],
++ "platforms": ["chromeos", "mac", "win", "linux", "bsd"],
+ "whitelist": [
+ "0DE0F05680A4A056BCEC864ED8DDA84296F82B40", // http://crbug.com/434651
+ "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80", // http://crbug.com/293683
+@@ -452,7 +452,7 @@
+ "networkingPrivate": {
+ "channel": "stable",
+ "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
+- "platforms": ["chromeos", "mac", "win", "linux"],
++ "platforms": ["chromeos", "mac", "win", "linux", "bsd"],
+ "whitelist": [
+ // DO NOT ADD ANY MORE ENTRIES HERE.
+ // networkingPrivate is being migrated to networking.onc.
diff --git a/www/chromium/files/patch-extensions_common_feature_switch.cc b/www/chromium/files/patch-extensions_common_feature_switch.cc
new file mode 100644
index 000000000000..11c05c384b31
--- /dev/null
+++ b/www/chromium/files/patch-extensions_common_feature_switch.cc
@@ -0,0 +1,14 @@
+--- extensions/common/feature_switch.cc.orig 2018-01-21 13:37:32.991326000 +0100
++++ extensions/common/feature_switch.cc 2018-01-21 13:37:55.308701000 +0100
+@@ -52,11 +52,7 @@
+ FeatureSwitch::DEFAULT_ENABLED),
+ load_media_router_component_extension(
+ kLoadMediaRouterComponentExtensionFlag,
+-#if defined(GOOGLE_CHROME_BUILD)
+ FeatureSwitch::DEFAULT_ENABLED),
+-#else
+- FeatureSwitch::DEFAULT_DISABLED),
+-#endif // defined(GOOGLE_CHROME_BUILD)
+ native_crx_bindings(switches::kNativeCrxBindings,
+ kNativeCrxBindingsFieldTrial,
+ FeatureSwitch::DEFAULT_DISABLED),
diff --git a/www/chromium/files/patch-extensions_common_features_feature.cc b/www/chromium/files/patch-extensions_common_features_feature.cc
new file mode 100644
index 000000000000..f8decc7f2947
--- /dev/null
+++ b/www/chromium/files/patch-extensions_common_features_feature.cc
@@ -0,0 +1,11 @@
+--- extensions/common/features/feature.cc.orig 2018-01-21 13:38:52.998785000 +0100
++++ extensions/common/features/feature.cc 2018-01-21 13:39:29.946264000 +0100
+@@ -26,6 +26,8 @@
+ return MACOSX_PLATFORM;
+ #elif defined(OS_WIN)
+ return WIN_PLATFORM;
++#elif defined(OS_BSD)
++ return LINUX_PLATFORM;
+ #else
+ return UNSPECIFIED_PLATFORM;
+ #endif
diff --git a/www/chromium/files/patch-gpu_BUILD.gn b/www/chromium/files/patch-gpu_BUILD.gn
deleted file mode 100644
index 9e9382921a99..000000000000
--- a/www/chromium/files/patch-gpu_BUILD.gn
+++ /dev/null
@@ -1,22 +0,0 @@
---- gpu/BUILD.gn.orig 2017-06-15 21:03:06.000000000 +0200
-+++ gpu/BUILD.gn 2017-06-22 12:14:14.034866000 +0200
-@@ -96,7 +96,7 @@
- libs += [ "android" ]
- deps += [ "//ui/android:ui_java" ]
- }
-- if (is_linux && !is_component_build) {
-+ if ((is_linux || is_bsd) && !is_component_build) {
- configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
- }
- }
-@@ -321,6 +321,10 @@
- "ipc/common/struct_traits_unittest.cc",
- "ipc/host/shader_disk_cache_unittest.cc",
- ]
-+
-+ if (is_bsd) {
-+ sources -= [ "config/gpu_util_unittest.cc" ]
-+ }
-
- if (is_mac) {
- sources += [ "ipc/client/gpu_memory_buffer_impl_io_surface_unittest.cc" ]
diff --git a/www/chromium/files/patch-gpu_config_gpu__control__list.cc b/www/chromium/files/patch-gpu_config_gpu__control__list.cc
index fb1654b0b75f..63b73889d355 100644
--- a/www/chromium/files/patch-gpu_config_gpu__control__list.cc
+++ b/www/chromium/files/patch-gpu_config_gpu__control__list.cc
@@ -1,8 +1,8 @@
---- gpu/config/gpu_control_list.cc.orig 2017-06-05 19:03:08 UTC
-+++ gpu/config/gpu_control_list.cc
-@@ -11,7 +11,11 @@
- #include "base/strings/stringprintf.h"
- #include "base/sys_info.h"
+--- gpu/config/gpu_control_list.cc.orig 2017-12-15 02:04:19.000000000 +0100
++++ gpu/config/gpu_control_list.cc 2017-12-24 16:25:45.151636000 +0100
+@@ -16,7 +16,11 @@
+ #include "base/values.h"
+ #include "build/build_config.h"
#include "gpu/config/gpu_info.h"
+#if defined(OS_BSD)
+#include <re2/re2.h>
@@ -12,7 +12,7 @@
namespace gpu {
namespace {
-@@ -206,7 +210,7 @@ bool GpuControlList::More::GLVersionInfoMismatch(
+@@ -211,7 +215,7 @@
GpuControlList::GLType GpuControlList::More::GetDefaultGLType() {
#if defined(OS_CHROMEOS)
return kGLTypeGL;
@@ -21,10 +21,10 @@
return kGLTypeGL;
#elif defined(OS_MACOSX)
return kGLTypeGL;
-@@ -621,7 +625,7 @@ GpuControlList::OsType GpuControlList::GetOsType() {
- return kOsWin;
- #elif defined(OS_ANDROID)
+@@ -644,7 +648,7 @@
return kOsAndroid;
+ #elif defined(OS_FUCHSIA)
+ return kOsFuchsia;
-#elif defined(OS_LINUX) || defined(OS_OPENBSD)
+#elif defined(OS_LINUX) || defined(OS_BSD)
return kOsLinux;
diff --git a/www/chromium/files/patch-gpu_gles2__conform__support_BUILD.gn b/www/chromium/files/patch-gpu_gles2__conform__support_BUILD.gn
deleted file mode 100644
index 94491a70bd8c..000000000000
--- a/www/chromium/files/patch-gpu_gles2__conform__support_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- gpu/gles2_conform_support/BUILD.gn.orig 2017-06-21 00:03:18.000000000 +0200
-+++ gpu/gles2_conform_support/BUILD.gn 2017-06-22 14:00:33.510247000 +0200
-@@ -60,7 +60,7 @@
- "//gpu/gles2_conform_support/egl",
- "//ui/gl",
- ]
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "native/egl_native_aura.cc",
- "native/egl_native_x11.cc",
diff --git a/www/chromium/files/patch-gpu_gles2__conform__support_native_BUILD.gn b/www/chromium/files/patch-gpu_gles2__conform__support_native_BUILD.gn
deleted file mode 100644
index 92ca9db6337d..000000000000
--- a/www/chromium/files/patch-gpu_gles2__conform__support_native_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- gpu/gles2_conform_support/native/BUILD.gn.orig 2017-04-19 19:06:34 UTC
-+++ gpu/gles2_conform_support/native/BUILD.gn
-@@ -20,7 +20,7 @@ source_set("native") {
- "//gpu/gles2_conform_support/egl",
- "//ui/gl",
- ]
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "egl_native_aura.cc",
- "egl_native_x11.cc",
diff --git a/www/chromium/files/patch-gpu_ipc_client_BUILD.gn b/www/chromium/files/patch-gpu_ipc_client_BUILD.gn
deleted file mode 100644
index 4bf67b11a980..000000000000
--- a/www/chromium/files/patch-gpu_ipc_client_BUILD.gn
+++ /dev/null
@@ -1,19 +0,0 @@
---- gpu/ipc/client/BUILD.gn.orig 2017-08-03 00:05:13.000000000 +0200
-+++ gpu/ipc/client/BUILD.gn 2017-08-10 04:16:23.803613000 +0200
-@@ -35,7 +35,7 @@
- "gpu_process_hosted_ca_layer_tree_params.h",
- ]
- }
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "gpu_memory_buffer_impl_native_pixmap.cc",
- "gpu_memory_buffer_impl_native_pixmap.h",
-@@ -44,6 +44,7 @@
- configs += [
- "//build/config/compiler:no_size_t_to_int_warning",
- "//gpu:gpu_implementation",
-+ "//build/config/linux:x11",
- ]
- deps = [
- "//base",
diff --git a/www/chromium/files/patch-gpu_ipc_service_BUILD.gn b/www/chromium/files/patch-gpu_ipc_service_BUILD.gn
deleted file mode 100644
index 174f55057291..000000000000
--- a/www/chromium/files/patch-gpu_ipc_service_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- gpu/ipc/service/BUILD.gn.orig 2017-08-03 00:05:13.000000000 +0200
-+++ gpu/ipc/service/BUILD.gn 2017-08-10 04:15:47.963951000 +0200
-@@ -112,7 +112,7 @@
- ]
- libs += [ "android" ]
- }
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "gpu_memory_buffer_factory_native_pixmap.cc",
- "gpu_memory_buffer_factory_native_pixmap.h",
-@@ -120,7 +120,7 @@
- ]
- }
- if (use_x11) {
-- sources += [ "x_util.h" ]
-+ sources += [ "//build/config/linux:x11" ]
- }
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
diff --git a/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc b/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc
index ac5de3523533..90c698ef50f2 100644
--- a/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc
+++ b/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc
@@ -1,38 +1,50 @@
---- gpu/ipc/service/gpu_init.cc.orig 2017-06-05 19:03:08 UTC
-+++ gpu/ipc/service/gpu_init.cc
-@@ -84,7 +84,7 @@ void GetGpuInfoFromCommandLine(gpu::GPUInfo& gpu_info,
- }
- }
+--- gpu/ipc/service/gpu_init.cc.orig 2017-12-15 02:04:19.000000000 +0100
++++ gpu/ipc/service/gpu_init.cc 2017-12-31 04:40:00.427872000 +0100
+@@ -37,7 +37,7 @@
+ namespace gpu {
+ namespace {
-#if !defined(OS_MACOSX)
+#if !defined(OS_MACOSX) && !defined(OS_BSD)
- void CollectGraphicsInfo(gpu::GPUInfo& gpu_info) {
- TRACE_EVENT0("gpu,startup", "Collect Graphics Info");
-
-@@ -111,7 +111,7 @@ void CollectGraphicsInfo(gpu::GPUInfo& gpu_info) {
+ void CollectGraphicsInfo(GPUInfo* gpu_info) {
+ DCHECK(gpu_info);
+ #if defined(OS_FUCHSIA)
+@@ -80,9 +80,9 @@
}
- #endif // defined(OS_WIN)
+ #endif // defined(OS_FUCHSIA)
}
-#endif // defined(OS_MACOSX)
+#endif // defined(OS_MACOSX) && defined(OS_BSD)
- #if defined(OS_LINUX) && !defined(OS_CHROMEOS)
+-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
++#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_BSD)
bool CanAccessNvidiaDeviceFile() {
-@@ -218,7 +218,7 @@ bool GpuInit::InitializeAndStartSandbox(const base::Co
+ bool res = true;
+ base::ThreadRestrictions::AssertIOAllowed();
+@@ -116,7 +116,7 @@
+ // passing from browser process.
+ GetGpuInfoFromCommandLine(*command_line, &gpu_info_);
+ #endif // OS_ANDROID
+-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
++#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(OS_BSD)
+ if (gpu_info_.gpu.vendor_id == 0x10de && // NVIDIA
+ gpu_info_.driver_vendor == "NVIDIA" && !CanAccessNvidiaDeviceFile())
+ return false;
+@@ -213,7 +213,7 @@
+ // multiple seconds to finish, which in turn cause the GPU process to crash.
// By skipping the following code on Mac, we don't really lose anything,
// because the basic GPU information is passed down from the host process.
- base::TimeTicks before_collect_context_graphics_info = base::TimeTicks::Now();
--#if !defined(OS_MACOSX)
-+#if !defined(OS_MACOSX) && !defined(OS_BSD)
- CollectGraphicsInfo(gpu_info_);
+-#if !defined(OS_MACOSX) && !defined(OS_ANDROID)
++#if !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD)
+ CollectGraphicsInfo(&gpu_info_);
if (gpu_info_.context_info_state == gpu::kCollectInfoFatalFailure)
return false;
-@@ -235,7 +235,7 @@ bool GpuInit::InitializeAndStartSandbox(const base::Co
- gpu::ApplyGpuDriverBugWorkarounds(
- gpu_info_, const_cast<base::CommandLine*>(&command_line));
+@@ -288,7 +288,7 @@
+ return;
}
--#endif // !defined(OS_MACOSX)
-+#endif // !defined(OS_MACOSX) && !defined(OS_BSD)
-
- gpu_feature_info_ = gpu::GetGpuFeatureInfo(gpu_info_, command_line);
+-#if !defined(OS_ANDROID)
++#if !defined(OS_ANDROID) && !defined(OS_BSD)
+ gpu::CollectContextGraphicsInfo(&gpu_info_);
+ gpu_feature_info_ = gpu::ComputeGpuFeatureInfo(gpu_info_, command_line);
+ #endif
diff --git a/www/chromium/files/patch-gpu_tools_compositor__model__bench_BUILD.gn b/www/chromium/files/patch-gpu_tools_compositor__model__bench_BUILD.gn
deleted file mode 100644
index 6a609390b36a..000000000000
--- a/www/chromium/files/patch-gpu_tools_compositor__model__bench_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- gpu/tools/compositor_model_bench/BUILD.gn.orig 2017-04-19 19:06:34 UTC
-+++ gpu/tools/compositor_model_bench/BUILD.gn
-@@ -4,7 +4,7 @@
-
- import("//build/config/ui.gni")
-
--if (is_linux && !is_chromeos && current_cpu != "arm" && use_x11) {
-+if ((is_linux || is_bsd) && !is_chromeos && current_cpu != "arm" && use_x11) {
- executable("compositor_model_bench") {
- sources = [
- "compositor_model_bench.cc",
diff --git a/www/chromium/files/patch-gpu_vulkan_BUILD.gn b/www/chromium/files/patch-gpu_vulkan_BUILD.gn
deleted file mode 100644
index e7d147e98f9b..000000000000
--- a/www/chromium/files/patch-gpu_vulkan_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- gpu/vulkan/BUILD.gn.orig 2017-06-05 19:03:08 UTC
-+++ gpu/vulkan/BUILD.gn
-@@ -17,7 +17,7 @@ if (enable_vulkan) {
- component("vulkan") {
- output_name = "vulkan_wrapper"
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- assert(use_x11, "Vulkan only support x11 at this point.")
- sources = [
- "vulkan_command_buffer.cc",
diff --git a/www/chromium/files/patch-headless_lib_headless__macros.h b/www/chromium/files/patch-headless_lib_headless__macros.h
index 6692a04accdc..952fc745b5fa 100644
--- a/www/chromium/files/patch-headless_lib_headless__macros.h
+++ b/www/chromium/files/patch-headless_lib_headless__macros.h
@@ -1,13 +1,13 @@
---- headless/lib/headless_macros.h.orig 2017-05-09 19:02:47 UTC
-+++ headless/lib/headless_macros.h
-@@ -5,8 +5,8 @@
- #ifndef HEADLESS_LIB_HEADLESS_MACROS_H_
- #define HEADLESS_LIB_HEADLESS_MACROS_H_
+--- headless/lib/headless_macros.h.orig 2017-12-15 02:04:19.000000000 +0100
++++ headless/lib/headless_macros.h 2017-12-24 16:44:30.147915000 +0100
+@@ -7,8 +7,8 @@
--#if defined(OS_POSIX) && !defined(OS_MACOSX)
-+#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD)
+ #include "build/build_config.h"
+
+-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_FUCHSIA)
++#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_FUCHSIA) && !defined(OS_BSD)
#define HEADLESS_USE_BREAKPAD
--#endif // defined(OS_POSIX) && !defined(OS_MACOSX)
-+#endif // defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD)
+-#endif // defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_FUCHSIA)
++#endif // defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_FUCHSIA) && !defined(OS_BSD)
#endif // HEADLESS_LIB_HEADLESS_MACROS_H_
diff --git a/www/chromium/files/patch-media_audio_BUILD.gn b/www/chromium/files/patch-media_audio_BUILD.gn
index f73f3e3061f9..4e0db7c6409d 100644
--- a/www/chromium/files/patch-media_audio_BUILD.gn
+++ b/www/chromium/files/patch-media_audio_BUILD.gn
@@ -1,11 +1,11 @@
---- media/audio/BUILD.gn.orig 2017-06-05 19:03:08 UTC
-+++ media/audio/BUILD.gn
-@@ -216,9 +216,19 @@ source_set("audio") {
+--- media/audio/BUILD.gn.orig 2018-01-04 21:05:54.000000000 +0100
++++ media/audio/BUILD.gn 2018-01-27 12:34:55.048961000 +0100
+@@ -237,9 +237,19 @@
deps += [ "//media/base/android:media_jni_headers" ]
}
- if (is_linux) {
-+ if (is_linux || (is_bsd && !use_sndio)) {
++ if (is_linux && !use_sndio) {
sources += [ "linux/audio_manager_linux.cc" ]
}
+ if (use_sndio) {
@@ -21,16 +21,11 @@
if (use_alsa) {
libs += [ "asound" ]
-@@ -265,9 +265,11 @@ source_set("audio") {
+@@ -285,7 +295,6 @@
+ if (link_pulseaudio) {
configs += [ ":libpulse" ]
} else {
- # TODO(ajwong): Technically, this dl should go in the action.
- libs += [ "dl" ]
deps += [ ":pulse_generate_stubs" ]
sources += get_target_outputs(":pulse_generate_stubs")
-+ }
-+ if (is_linux) {
-+ libs += [ "dl" ]
}
- }
-
diff --git a/www/chromium/files/patch-media__audio__alsa__audio_manager_alsa.cc b/www/chromium/files/patch-media_audio_alsa_audio_manager_alsa.cc
index bffba06550ae..6bf61c877d95 100644
--- a/www/chromium/files/patch-media__audio__alsa__audio_manager_alsa.cc
+++ b/www/chromium/files/patch-media_audio_alsa_audio_manager_alsa.cc
@@ -1,6 +1,6 @@
---- media/audio/alsa/audio_manager_alsa.cc.orig 2017-06-05 19:03:08 UTC
-+++ media/audio/alsa/audio_manager_alsa.cc
-@@ -138,7 +138,9 @@ void AudioManagerAlsa::GetAlsaAudioDevices(StreamType
+--- media/audio/alsa/audio_manager_alsa.cc.orig 2017-12-15 02:04:21.000000000 +0100
++++ media/audio/alsa/audio_manager_alsa.cc 2017-12-24 16:52:36.819099000 +0100
+@@ -93,7 +93,9 @@
int card = -1;
// Loop through the sound cards to get ALSA device hints.
@@ -10,7 +10,7 @@
void** hints = NULL;
int error = wrapper_->DeviceNameHint(card, kPcmInterfaceName, &hints);
if (!error) {
-@@ -150,7 +152,9 @@ void AudioManagerAlsa::GetAlsaAudioDevices(StreamType
+@@ -105,7 +107,9 @@
DLOG(WARNING) << "GetAlsaAudioDevices: unable to get device hints: "
<< wrapper_->StrError(error);
}
@@ -20,19 +20,19 @@
}
void AudioManagerAlsa::GetAlsaDevicesInfo(AudioManagerAlsa::StreamType type,
-@@ -232,7 +236,11 @@ bool AudioManagerAlsa::IsAlsaDeviceAvailable(
- // goes through software conversion if needed (e.g. incompatible
- // sample rate).
- // TODO(joi): Should we prefer "hw" instead?
+@@ -188,7 +192,11 @@
+ // goes through software conversion if needed (e.g. incompatible
+ // sample rate).
+ // TODO(joi): Should we prefer "hw" instead?
+#ifdef OS_LINUX
- static const char kDeviceTypeDesired[] = "plughw";
+ static const char kDeviceTypeDesired[] = "plughw";
+#else
-+ static const char kDeviceTypeDesired[] = "plug";
++ static const char kDeviceTypeDesired[] = "plug";
+#endif
- return strncmp(kDeviceTypeDesired,
- device_name,
- arraysize(kDeviceTypeDesired) - 1) == 0;
-@@ -256,7 +264,9 @@ bool AudioManagerAlsa::HasAnyAlsaAudioDevice(
+ return strncmp(kDeviceTypeDesired, device_name,
+ arraysize(kDeviceTypeDesired) - 1) == 0;
+ }
+@@ -210,7 +218,9 @@
// Loop through the sound cards.
// Don't use snd_device_name_hint(-1,..) since there is a access violation
// inside this ALSA API with libasound.so.2.0.0.
@@ -42,7 +42,7 @@
int error = wrapper_->DeviceNameHint(card, kPcmInterfaceName, &hints);
if (!error) {
for (void** hint_iter = hints; *hint_iter != NULL; hint_iter++) {
-@@ -280,7 +290,9 @@ bool AudioManagerAlsa::HasAnyAlsaAudioDevice(
+@@ -234,7 +244,9 @@
DLOG(WARNING) << "HasAnyAudioDevice: unable to get device hints: "
<< wrapper_->StrError(error);
}
diff --git a/www/chromium/files/patch-media_audio_audio__manager.cc b/www/chromium/files/patch-media_audio_audio__manager.cc
index 537a12accdbc..a80ccb2948e0 100644
--- a/www/chromium/files/patch-media_audio_audio__manager.cc
+++ b/www/chromium/files/patch-media_audio_audio__manager.cc
@@ -1,29 +1,29 @@
---- media/audio/audio_manager.cc.orig 2017-06-05 19:03:08 UTC
-+++ media/audio/audio_manager.cc
-@@ -93,7 +93,7 @@ class AudioManagerHelper : public base::PowerObserver
+--- media/audio/audio_manager.cc.orig 2017-12-15 02:04:21.000000000 +0100
++++ media/audio/audio_manager.cc 2017-12-24 17:10:24.736979000 +0100
+@@ -94,7 +94,7 @@
}
#endif
-#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_FREEBSD)
++#if defined(OS_LINUX) || defined(OS_BSD)
void set_app_name(const std::string& app_name) { app_name_ = app_name; }
const std::string& app_name() const { return app_name_; }
#endif
-@@ -227,7 +227,7 @@ class AudioManagerHelper : public base::PowerObserver
+@@ -229,7 +229,7 @@
std::unique_ptr<base::win::ScopedCOMInitializer> com_initializer_for_testing_;
#endif
-#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_FREEBSD)
++#if defined(OS_LINUX) || defined(OS_BSD)
std::string app_name_;
#endif
-@@ -340,7 +340,7 @@ void AudioManager::StartHangMonitorIfNeeded(
+@@ -313,7 +313,7 @@
GetHelper()->StartHangTimer(std::move(task_runner));
}
-#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_FREEBSD)
++#if defined(OS_LINUX) || defined(OS_BSD)
// static
void AudioManager::SetGlobalAppName(const std::string& app_name) {
GetHelper()->set_app_name(app_name);
diff --git a/www/chromium/files/patch-media_audio_audio__manager.h b/www/chromium/files/patch-media_audio_audio__manager.h
index 8431068e1eb8..3350653361db 100644
--- a/www/chromium/files/patch-media_audio_audio__manager.h
+++ b/www/chromium/files/patch-media_audio_audio__manager.h
@@ -1,11 +1,11 @@
---- media/audio/audio_manager.h.orig 2017-04-19 19:06:35 UTC
-+++ media/audio/audio_manager.h
-@@ -81,7 +81,7 @@ class MEDIA_EXPORT AudioManager {
+--- media/audio/audio_manager.h.orig 2017-12-15 02:04:21.000000000 +0100
++++ media/audio/audio_manager.h 2017-12-24 17:11:05.999543000 +0100
+@@ -68,7 +68,7 @@
static void StartHangMonitorIfNeeded(
scoped_refptr<base::SingleThreadTaskRunner> task_runner);
-#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_FREEBSD)
++#if defined(OS_LINUX) || defined(OS_BSD)
// Sets the name of the audio source as seen by external apps. Only actually
// used with PulseAudio as of this writing.
static void SetGlobalAppName(const std::string& app_name);
diff --git a/www/chromium/files/patch-media_base_BUILD.gn b/www/chromium/files/patch-media_base_BUILD.gn
deleted file mode 100644
index 74a4d686d3bd..000000000000
--- a/www/chromium/files/patch-media_base_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- media/base/BUILD.gn.orig 2017-06-05 19:03:08 UTC
-+++ media/base/BUILD.gn
-@@ -309,7 +309,7 @@ target(link_target_type, "base") {
- allow_circular_includes_from += [ "//media/base/android" ]
- }
-
-- if (is_linux && use_x11) {
-+ if ((is_linux || is_bsd) && use_x11) {
- configs += [
- "//build/config/linux:x11",
- "//build/config/linux:xext",
-@@ -335,7 +335,7 @@ target(link_target_type, "base") {
- defines += [ "DISABLE_USER_INPUT_MONITOR" ]
- }
-
-- if (is_linux || is_win) {
-+ if (is_linux || is_bsd || is_win) {
- sources += [
- "keyboard_event_counter.cc",
- "keyboard_event_counter.h",
diff --git a/www/chromium/files/patch-media_base_audio__latency.cc b/www/chromium/files/patch-media_base_audio__latency.cc
index 40aca19e7da4..15e0292a9068 100644
--- a/www/chromium/files/patch-media_base_audio__latency.cc
+++ b/www/chromium/files/patch-media_base_audio__latency.cc
@@ -1,11 +1,11 @@
---- media/base/audio_latency.cc.orig 2017-06-05 19:03:08 UTC
-+++ media/base/audio_latency.cc
-@@ -83,7 +83,7 @@ int AudioLatency::GetRtcBufferSize(int sample_rate, in
+--- media/base/audio_latency.cc.orig 2017-12-15 02:04:21.000000000 +0100
++++ media/base/audio_latency.cc 2017-12-24 17:08:13.779303000 +0100
+@@ -106,7 +106,7 @@
return frames_per_buffer;
}
--#if defined(OS_LINUX) || defined(OS_MACOSX)
-+#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_BSD)
- // On Linux and MacOS, the low level IO implementations on the browser side
- // supports all buffer size the clients want. We use the native peer
- // connection buffer size (10ms) to achieve best possible performance.
+-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_FUCHSIA)
++#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_FUCHSIA) || defined(OS_BSD)
+ // On Linux, MacOS and Fuchsia, the low level IO implementations on the
+ // browser side supports all buffer size the clients want. We use the native
+ // peer connection buffer size (10ms) to achieve best possible performance.
diff --git a/www/chromium/files/patch-media_capture_video_video__capture__device__factory.cc b/www/chromium/files/patch-media_capture_video_video__capture__device__factory.cc
index ad0e21f2dce7..925abf3974ae 100644
--- a/www/chromium/files/patch-media_capture_video_video__capture__device__factory.cc
+++ b/www/chromium/files/patch-media_capture_video_video__capture__device__factory.cc
@@ -1,30 +1,30 @@
---- media/capture/video/video_capture_device_factory.cc.orig 2017-06-05 19:03:08 UTC
-+++ media/capture/video/video_capture_device_factory.cc
-@@ -18,6 +18,10 @@ namespace media {
- std::unique_ptr<VideoCaptureDeviceFactory>
+--- media/capture/video/video_capture_device_factory.cc.orig 2017-12-15 02:04:21.000000000 +0100
++++ media/capture/video/video_capture_device_factory.cc 2017-12-24 17:18:54.671292000 +0100
+@@ -19,6 +19,10 @@
VideoCaptureDeviceFactory::CreateFactory(
- scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner) {
+ scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner,
+ gpu::GpuMemoryBufferManager* gpu_buffer_manager) {
+#if defined(OS_BSD)
-+ return std::unique_ptr<VideoCaptureDeviceFactory>(
-+ new media::FakeVideoCaptureDeviceFactory());
++ return std::unique_ptr<VideoCaptureDeviceFactory>(
++ new media::FakeVideoCaptureDeviceFactory());
+#else
const base::CommandLine* command_line =
base::CommandLine::ForCurrentProcess();
// Use a Fake or File Video Device Factory if the command line flags are
-@@ -42,6 +46,7 @@ VideoCaptureDeviceFactory::CreateFactory(
+@@ -43,6 +47,7 @@
return std::unique_ptr<VideoCaptureDeviceFactory>(
- CreateVideoCaptureDeviceFactory(ui_task_runner));
+ CreateVideoCaptureDeviceFactory(ui_task_runner, gpu_buffer_manager));
}
+#endif
}
VideoCaptureDeviceFactory::VideoCaptureDeviceFactory() {
-@@ -50,7 +55,7 @@ VideoCaptureDeviceFactory::VideoCaptureDeviceFactory()
-
+@@ -52,7 +57,7 @@
VideoCaptureDeviceFactory::~VideoCaptureDeviceFactory() {}
--#if !defined(OS_MACOSX) && !defined(OS_LINUX) && !defined(OS_ANDROID) && \
-+#if !defined(OS_MACOSX) && !defined(OS_LINUX) && !defined(OS_BSD) && !defined(OS_ANDROID) && \
- !defined(OS_WIN)
+ #if !defined(OS_MACOSX) && !defined(OS_LINUX) && !defined(OS_ANDROID) && \
+- !defined(OS_WIN)
++ !defined(OS_WIN) && !defined(OS_BSD)
// static
VideoCaptureDeviceFactory*
+ VideoCaptureDeviceFactory::CreateVideoCaptureDeviceFactory(
diff --git a/www/chromium/files/patch-media_cast_BUILD.gn b/www/chromium/files/patch-media_cast_BUILD.gn
deleted file mode 100644
index a6f66f17ec53..000000000000
--- a/www/chromium/files/patch-media_cast_BUILD.gn
+++ /dev/null
@@ -1,29 +0,0 @@
---- media/cast/BUILD.gn.orig 2017-06-05 19:03:08 UTC
-+++ media/cast/BUILD.gn
-@@ -361,7 +361,7 @@ test("cast_unittests") {
- }
- }
-
--if (is_win || is_mac || (is_linux && !is_chromeos)) {
-+if (is_win || is_mac || (is_linux && !is_chromeos) || is_bsd) {
- # This is a target for the collection of cast development tools. They are
- # not built/linked into the Chromium browser.
- group("testing_tools") {
-@@ -415,7 +415,7 @@ if (is_win || is_mac || (is_linux && !is_chromeos)) {
- "//ui/gfx/geometry",
- ]
-
-- if (is_linux && !is_chromeos && use_x11) {
-+ if ((is_linux || is_bsd) && !is_chromeos && use_x11) {
- sources += [
- "test/linux_output_window.cc",
- "test/linux_output_window.h",
-@@ -518,7 +518,7 @@ if (is_win || is_mac || (is_linux && !is_chromeos)) {
- }
- }
-
--if (is_linux && !is_chromeos) {
-+if ((is_linux || is_bsd) && !is_chromeos) {
- test("tap_proxy") {
- sources = [
- "test/utility/tap_proxy.cc",
diff --git a/www/chromium/files/patch-media_cdm_ppapi_ppapi__cdm__adapter.gni b/www/chromium/files/patch-media_cdm_ppapi_ppapi__cdm__adapter.gni
deleted file mode 100644
index f99a58f5a90b..000000000000
--- a/www/chromium/files/patch-media_cdm_ppapi_ppapi__cdm__adapter.gni
+++ /dev/null
@@ -1,20 +0,0 @@
---- media/cdm/ppapi/ppapi_cdm_adapter.gni.orig 2017-04-19 19:06:35 UTC
-+++ media/cdm/ppapi/ppapi_cdm_adapter.gni
-@@ -5,7 +5,7 @@
- # This template defines a CDM adapter target. Just use this as you would a
- # normal target and everything should work correctly.
- template("ppapi_cdm_adapter") {
-- if (is_mac || is_linux) {
-+ if (is_mac || is_linux || is_bsd) {
- _target_type = "loadable_module"
- } else {
- _target_type = "shared_library"
-@@ -57,7 +57,7 @@ template("ppapi_cdm_adapter") {
- libs += [ "rt" ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- # CDM adapter depends on a CDM in component and non-component builds.
- configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
- }
diff --git a/www/chromium/files/patch-mojo_BUILD.gn b/www/chromium/files/patch-mojo_BUILD.gn
deleted file mode 100644
index c89989fa0357..000000000000
--- a/www/chromium/files/patch-mojo_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- mojo/BUILD.gn.orig 2017-04-19 19:06:35 UTC
-+++ mojo/BUILD.gn
-@@ -12,7 +12,7 @@ group("mojo") {
- "//mojo/common",
- ]
-
-- if (!(is_linux && current_cpu == "x86")) {
-+ if (!((is_linux || is_bsd) && current_cpu == "x86")) {
- deps += [ "//mojo/public" ]
- }
-
diff --git a/www/chromium/files/patch-mojo_edk_test_BUILD.gn b/www/chromium/files/patch-mojo_edk_test_BUILD.gn
deleted file mode 100644
index 19e36a588772..000000000000
--- a/www/chromium/files/patch-mojo_edk_test_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- mojo/edk/test/BUILD.gn.orig 2017-04-19 19:06:35 UTC
-+++ mojo/edk/test/BUILD.gn
-@@ -46,7 +46,7 @@ source_set("run_all_unittests") {
- "//testing/gtest",
- ]
-
-- if (is_linux && !is_component_build) {
-+ if ((is_linux || is_bsd) && !is_component_build) {
- public_configs = [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
- }
- }
-@@ -66,7 +66,7 @@ source_set("run_all_perftests") {
- "run_all_perftests.cc",
- ]
-
-- if (is_linux && !is_component_build) {
-+ if ((is_linux || is_bsd) && !is_component_build) {
- public_configs = [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
- }
- }
diff --git a/www/chromium/files/patch-native__client__sdk_src_BUILD.gn b/www/chromium/files/patch-native__client__sdk_src_BUILD.gn
deleted file mode 100644
index 6983b7f9dfae..000000000000
--- a/www/chromium/files/patch-native__client__sdk_src_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- native_client_sdk/src/BUILD.gn.orig 2017-04-19 19:06:36 UTC
-+++ native_client_sdk/src/BUILD.gn
-@@ -7,7 +7,7 @@ import("//build/config/features.gni")
- declare_args() {
- # Set to true if cross compiling trusted (e.g. building sel_ldr_arm on x86)
- # binaries is supported.
-- enable_cross_trusted = is_linux
-+ enable_cross_trusted = is_linux || is_bsd
-
- # Build the nacl SDK untrusted components. This is disabled by default since
- # not all NaCl untrusted compilers are in goma (e.g arm-nacl-glibc)
-@@ -28,7 +28,7 @@ if (enable_nacl) {
- "//native_client/src/trusted/service_runtime:sel_ldr",
- "//native_client/src/trusted/validator/driver:ncval_new",
- ]
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- deps += [ "//native_client/src/nonsfi/loader:nonsfi_loader" ]
- }
- }
diff --git a/www/chromium/files/patch-net_BUILD.gn b/www/chromium/files/patch-net_BUILD.gn
index 8111286667f9..7a66e7c0b09f 100644
--- a/www/chromium/files/patch-net_BUILD.gn
+++ b/www/chromium/files/patch-net_BUILD.gn
@@ -1,6 +1,6 @@
---- net/BUILD.gn.orig 2017-06-26 21:03:20.000000000 +0200
-+++ net/BUILD.gn 2017-07-04 23:12:52.376233000 +0200
-@@ -86,7 +86,7 @@
+--- net/BUILD.gn.orig 2017-12-15 02:04:22.000000000 +0100
++++ net/BUILD.gn 2017-12-30 02:46:23.419099000 +0100
+@@ -99,7 +99,7 @@
net_configs += [ "//build/config/linux/gconf" ]
}
@@ -9,10 +9,12 @@
net_configs += [ "//build/config/linux:libresolv" ]
}
-@@ -1900,6 +1900,17 @@
- sources -= [ "disk_cache/blockfile/file_posix.cc" ]
- }
+@@ -1954,6 +1954,17 @@
+ ]
+ sources -= [ "disk_cache/blockfile/file_posix.cc" ]
++ }
++
+ if (is_bsd) {
+ sources -= [
+ "base/address_tracker_linux.cc",
@@ -22,64 +24,6 @@
+ "base/network_interfaces_linux.cc",
+ ]
+ sources += [ "base/network_interfaces_freebsd.cc" ]
-+ }
-+
- if (is_ios || is_mac) {
- sources += [
- "base/mac/url_conversions.h",
-@@ -2854,7 +2865,7 @@
- }
- }
-
--if (is_linux || is_mac) {
-+if (is_linux || is_bsd || is_mac) {
- executable("cachetool") {
- testonly = true
- sources = [
-@@ -2883,7 +2894,7 @@
- }
- }
-
--if (is_linux) {
-+if (is_linux || is_bsd) {
- static_library("epoll_server") {
- sources = [
- "tools/epoll_server/epoll_server.cc",
-@@ -2987,7 +2998,7 @@
- }
- }
-
--if (is_android || is_linux) {
-+if (is_android || is_linux || is_bsd) {
- executable("disk_cache_memory_test") {
- testonly = true
- sources = [
-@@ -4874,7 +4885,7 @@
- "third_party/nist-pkits/",
- ]
-
-- if (is_linux || is_mac || is_win) {
-+ if (is_linux || is_bsd || is_mac || is_win) {
- deps += [
- "//third_party/pyftpdlib/",
- "//third_party/pywebsocket/",
-@@ -4897,7 +4908,7 @@
- if (is_desktop_linux) {
- deps += [ ":epoll_quic_tools" ]
- }
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "tools/quic/chlo_extractor_test.cc",
- "tools/quic/end_to_end_test.cc",
-@@ -4957,6 +4968,10 @@
-
- if (is_chromeos) {
- sources -= [ "proxy/proxy_config_service_linux_unittest.cc" ]
-+ }
-+
-+ if (is_bsd) {
-+ sources -= [ "base/address_tracker_linux_unittest.cc" ]
- }
+ }
- if (!is_proto_quic && v8_use_external_startup_data) {
+ if (is_ios || is_mac) {
diff --git a/www/chromium/files/patch-net_base_address__tracker__linux.cc b/www/chromium/files/patch-net_base_address__tracker__linux.cc
new file mode 100644
index 000000000000..6f0926f45068
--- /dev/null
+++ b/www/chromium/files/patch-net_base_address__tracker__linux.cc
@@ -0,0 +1,371 @@
+--- net/base/address_tracker_linux.cc.orig 2018-01-21 13:54:41.810603000 +0100
++++ net/base/address_tracker_linux.cc 2018-01-21 14:00:43.013272000 +0100
+@@ -5,7 +5,7 @@
+ #include "net/base/address_tracker_linux.h"
+
+ #include <errno.h>
+-#include <linux/if.h>
++#include <net/if.h>
+ #include <stdint.h>
+ #include <sys/ioctl.h>
+
+@@ -18,96 +18,9 @@
+ namespace net {
+ namespace internal {
+
+-namespace {
+-
+-// Some kernel functions such as wireless_send_event and rtnetlink_ifinfo_prep
+-// may send spurious messages over rtnetlink. RTM_NEWLINK messages where
+-// ifi_change == 0 and rta_type == IFLA_WIRELESS should be ignored.
+-bool IgnoreWirelessChange(const struct nlmsghdr* header,
+- const struct ifinfomsg* msg) {
+- size_t length = IFLA_PAYLOAD(header);
+- for (const struct rtattr* attr = IFLA_RTA(msg); RTA_OK(attr, length);
+- attr = RTA_NEXT(attr, length)) {
+- if (attr->rta_type == IFLA_WIRELESS && msg->ifi_change == 0)
+- return true;
+- }
+- return false;
+-}
+-
+-// Retrieves address from NETLINK address message.
+-// Sets |really_deprecated| for IPv6 addresses with preferred lifetimes of 0.
+-bool GetAddress(const struct nlmsghdr* header,
+- IPAddress* out,
+- bool* really_deprecated) {
+- if (really_deprecated)
+- *really_deprecated = false;
+- const struct ifaddrmsg* msg =
+- reinterpret_cast<struct ifaddrmsg*>(NLMSG_DATA(header));
+- size_t address_length = 0;
+- switch (msg->ifa_family) {
+- case AF_INET:
+- address_length = IPAddress::kIPv4AddressSize;
+- break;
+- case AF_INET6:
+- address_length = IPAddress::kIPv6AddressSize;
+- break;
+- default:
+- // Unknown family.
+- return false;
+- }
+- // Use IFA_ADDRESS unless IFA_LOCAL is present. This behavior here is based on
+- // getaddrinfo in glibc (check_pf.c). Judging from kernel implementation of
+- // NETLINK, IPv4 addresses have only the IFA_ADDRESS attribute, while IPv6
+- // have the IFA_LOCAL attribute.
+- uint8_t* address = NULL;
+- uint8_t* local = NULL;
+- size_t length = IFA_PAYLOAD(header);
+- for (const struct rtattr* attr =
+- reinterpret_cast<const struct rtattr*>(IFA_RTA(msg));
+- RTA_OK(attr, length);
+- attr = RTA_NEXT(attr, length)) {
+- switch (attr->rta_type) {
+- case IFA_ADDRESS:
+- DCHECK_GE(RTA_PAYLOAD(attr), address_length);
+- address = reinterpret_cast<uint8_t*>(RTA_DATA(attr));
+- break;
+- case IFA_LOCAL:
+- DCHECK_GE(RTA_PAYLOAD(attr), address_length);
+- local = reinterpret_cast<uint8_t*>(RTA_DATA(attr));
+- break;
+- case IFA_CACHEINFO: {
+- const struct ifa_cacheinfo *cache_info =
+- reinterpret_cast<const struct ifa_cacheinfo*>(RTA_DATA(attr));
+- if (really_deprecated)
+- *really_deprecated = (cache_info->ifa_prefered == 0);
+- } break;
+- default:
+- break;
+- }
+- }
+- if (local)
+- address = local;
+- if (!address)
+- return false;
+- *out = IPAddress(address, address_length);
+- return true;
+-}
+-
+-} // namespace
+-
+ // static
+ char* AddressTrackerLinux::GetInterfaceName(int interface_index, char* buf) {
+- memset(buf, 0, IFNAMSIZ);
+- base::ScopedFD ioctl_socket = GetSocketForIoctl();
+- if (!ioctl_socket.is_valid())
+- return buf;
+-
+- struct ifreq ifr = {};
+- ifr.ifr_ifindex = interface_index;
+-
+- if (ioctl(ioctl_socket.get(), SIOCGIFNAME, &ifr) == 0)
+- strncpy(buf, ifr.ifr_name, IFNAMSIZ - 1);
+- return buf;
++ return NULL;
+ }
+
+ AddressTrackerLinux::AddressTrackerLinux()
+@@ -150,93 +63,8 @@
+ }
+
+ 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::MessageLoopForIO::current()->WatchFileDescriptor(
+- netlink_fd_, true, base::MessageLoopForIO::WATCH_READ, &watcher_, this);
+- if (rv < 0) {
+- PLOG(ERROR) << "Could not watch NETLINK socket";
+- AbortAndForceOnline();
+- return;
+- }
+- }
++ NOTIMPLEMENTED();
++ AbortAndForceOnline();
+ }
+
+ void AddressTrackerLinux::AbortAndForceOnline() {
+@@ -247,25 +75,6 @@
+ connection_type_initialized_cv_.Broadcast();
+ }
+
+-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
+@@ -316,102 +125,7 @@
+ 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.
+- AddressMap::iterator 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;
+- }
+- }
++ NOTIMPLEMENTED();
+ }
+
+ void AddressTrackerLinux::OnFileCanReadWithoutBlocking(int fd) {
+@@ -443,34 +157,7 @@
+ }
+
+ void AddressTrackerLinux::UpdateCurrentConnectionType() {
+- AddressTrackerLinux::AddressMap address_map = GetAddressMap();
+- std::unordered_set<int> online_links = GetOnlineLinks();
+-
+- // Strip out tunnel interfaces from online_links
+- for (std::unordered_set<int>::const_iterator it = online_links.begin();
+- it != online_links.end();) {
+- if (IsTunnelInterface(*it)) {
+- std::unordered_set<int>::const_iterator tunnel_it = it;
+- ++it;
+- online_links.erase(*tunnel_it);
+- } else {
+- ++it;
+- }
+- }
+-
+- NetworkInterfaceList networks;
+- NetworkChangeNotifier::ConnectionType type =
+- NetworkChangeNotifier::CONNECTION_NONE;
+- if (GetNetworkListImpl(&networks, 0, online_links, address_map,
+- get_interface_name_)) {
+- type = NetworkChangeNotifier::ConnectionTypeFromInterfaceList(networks);
+- } else {
+- type = online_links.empty() ? NetworkChangeNotifier::CONNECTION_NONE
+- : NetworkChangeNotifier::CONNECTION_UNKNOWN;
+- }
+-
+- AddressTrackerAutoLock lock(*this, connection_type_lock_);
+- current_connection_type_ = type;
++ NOTIMPLEMENTED();
+ }
+
+ int AddressTrackerLinux::GetThreadsWaitingForConnectionTypeInitForTesting()
diff --git a/www/chromium/files/patch-net_base_address__tracker__linux.h b/www/chromium/files/patch-net_base_address__tracker__linux.h
index 71a5be50858f..982272f67744 100644
--- a/www/chromium/files/patch-net_base_address__tracker__linux.h
+++ b/www/chromium/files/patch-net_base_address__tracker__linux.h
@@ -1,28 +1,12 @@
---- net/base/address_tracker_linux.h.orig 2017-04-19 19:06:36 UTC
-+++ net/base/address_tracker_linux.h
-@@ -6,10 +6,12 @@
- #define NET_BASE_ADDRESS_TRACKER_LINUX_H_
+--- net/base/address_tracker_linux.h.orig 2018-01-04 21:05:55.000000000 +0100
++++ net/base/address_tracker_linux.h 2018-01-21 13:43:10.477307000 +0100
+@@ -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,11 @@ namespace internal {
- class NET_EXPORT_PRIVATE AddressTrackerLinux :
- public base::MessageLoopForIO::Watcher {
- 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/chromium/files/patch-net_base_mime__util__unittest.cc b/www/chromium/files/patch-net_base_mime__util__unittest.cc
deleted file mode 100644
index 3f7f2c6ed5de..000000000000
--- a/www/chromium/files/patch-net_base_mime__util__unittest.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- net/base/mime_util_unittest.cc.orig 2017-06-05 19:03:09 UTC
-+++ net/base/mime_util_unittest.cc
-@@ -250,7 +250,7 @@ TEST(MimeUtilTest, TestGetExtensionsForMimeType) {
- {"message/", 0, NULL, true},
- {"image/bmp", 1, "bmp"},
- {"video/*", 6, "mp4"},
--#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_IOS)
-+#if (defined(OS_POSIX) && !defined(OS_MACOSX)) || defined(OS_IOS)
- {"video/*", 6, "mpg"},
- #else
- {"video/*", 6, "mpeg"},
diff --git a/www/chromium/files/patch-net_http_http__auth__gssapi__posix.cc b/www/chromium/files/patch-net_http_http__auth__gssapi__posix.cc
index 8fb9bb44c5ec..f919b5a72b18 100644
--- a/www/chromium/files/patch-net_http_http__auth__gssapi__posix.cc
+++ b/www/chromium/files/patch-net_http_http__auth__gssapi__posix.cc
@@ -1,12 +1,13 @@
---- net/http/http_auth_gssapi_posix.cc.orig 2017-06-05 19:03:10 UTC
-+++ net/http/http_auth_gssapi_posix.cc
-@@ -431,8 +431,8 @@ base::NativeLibrary GSSAPISharedLibrary::LoadSharedLib
+--- net/http/http_auth_gssapi_posix.cc.orig 2018-01-04 21:05:56.000000000 +0100
++++ net/http/http_auth_gssapi_posix.cc 2018-01-16 20:07:40.196726000 +0100
+@@ -431,8 +431,9 @@
static const char* const kDefaultLibraryNames[] = {
#if defined(OS_MACOSX)
"/System/Library/Frameworks/GSS.framework/GSS"
-#elif defined(OS_OPENBSD)
- "libgssapi.so" // Heimdal - OpenBSD
+#elif defined(OS_BSD)
++ "libgssapi_krb5.so.2", // MIT Kerberos - FreeBSD
+ "libgssapi.so" // Heimdal - OpenBSD, FreeBSD
#else
"libgssapi_krb5.so.2", // MIT Kerberos - FC, Suse10, Debian
diff --git a/www/chromium/files/patch-net_proxy_proxy__service.cc b/www/chromium/files/patch-net_proxy_proxy__service.cc
index 498354f6e3b3..a5171ba10d50 100644
--- a/www/chromium/files/patch-net_proxy_proxy__service.cc
+++ b/www/chromium/files/patch-net_proxy_proxy__service.cc
@@ -1,6 +1,6 @@
---- net/proxy/proxy_service.cc.orig 2017-08-02 14:36:44.717388000 +0200
-+++ net/proxy/proxy_service.cc 2017-08-02 14:37:57.115061000 +0200
-@@ -49,7 +49,7 @@
+--- net/proxy/proxy_service.cc.orig 2017-12-15 02:04:23.000000000 +0100
++++ net/proxy/proxy_service.cc 2017-12-24 17:38:51.402197000 +0100
+@@ -46,7 +46,7 @@
#elif defined(OS_MACOSX)
#include "net/proxy/proxy_config_service_mac.h"
#include "net/proxy/proxy_resolver_mac.h"
@@ -9,10 +9,10 @@
#include "net/proxy/proxy_config_service_linux.h"
#elif defined(OS_ANDROID)
#include "net/proxy/proxy_config_service_android.h"
-@@ -1535,7 +1535,7 @@
+@@ -1496,7 +1496,7 @@
<< "profile_io_data.cc::CreateProxyConfigService and this should "
<< "be used only for examples.";
- return base::WrapUnique(new UnsetProxyConfigService);
+ return std::make_unique<UnsetProxyConfigService>();
-#elif defined(OS_LINUX)
+#elif defined(OS_LINUX) || defined(OS_BSD)
std::unique_ptr<ProxyConfigServiceLinux> linux_config_service(
diff --git a/www/chromium/files/patch-net_socket_udp__socket__posix.cc b/www/chromium/files/patch-net_socket_udp__socket__posix.cc
index 96b22bf317e4..61a629e3f333 100644
--- a/www/chromium/files/patch-net_socket_udp__socket__posix.cc
+++ b/www/chromium/files/patch-net_socket_udp__socket__posix.cc
@@ -1,15 +1,24 @@
---- net/socket/udp_socket_posix.cc.orig 2017-06-05 19:03:10 UTC
-+++ net/socket/udp_socket_posix.cc
-@@ -60,7 +60,7 @@ const int kBindRetries = 10;
- const int kPortStart = 1024;
- const int kPortEnd = 65535;
+--- net/socket/udp_socket_posix.cc.orig 2018-01-04 21:05:56.000000000 +0100
++++ net/socket/udp_socket_posix.cc 2018-01-21 13:53:16.974899000 +0100
+@@ -64,7 +64,7 @@
+ const base::TimeDelta kActivityMonitorMsThreshold =
+ base::TimeDelta::FromMilliseconds(100);
-#if defined(OS_MACOSX)
+#if defined(OS_MACOSX) || defined(OS_BSD)
// Returns IPv4 address in network order.
int GetIPv4AddressFromIndex(int socket, uint32_t index, uint32_t* address) {
-@@ -759,7 +759,7 @@ int UDPSocketPosix::SetMulticastOptions() {
+@@ -617,7 +617,7 @@
+ DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
+ int value = broadcast ? 1 : 0;
+ int rv;
+-#if defined(OS_MACOSX)
++#if defined(OS_MACOSX) || defined(OS_BSD)
+ // SO_REUSEPORT on OSX permits multiple processes to each receive
+ // UDP multicast or broadcast datagrams destined for the bound
+ // port.
+@@ -830,7 +830,7 @@
if (multicast_interface_ != 0) {
switch (addr_family_) {
case AF_INET: {
@@ -18,7 +27,28 @@
ip_mreqn mreq;
mreq.imr_ifindex = multicast_interface_;
mreq.imr_address.s_addr = htonl(INADDR_ANY);
-@@ -834,7 +834,7 @@ int UDPSocketPosix::JoinGroup(const IPAddress& group_a
+@@ -841,8 +841,20 @@
+ if (error != OK)
+ return error;
+ #endif
++#if defined(OS_BSD)
++ int value = 1;
++ if (setsockopt(socket_, SOL_SOCKET, SO_REUSEADDR, &value, sizeof(value)) != 0)
++ return MapSystemError(errno);
++ if (setsockopt(socket_, SOL_SOCKET, SO_REUSEPORT, &value, sizeof(value)) != 0)
++ return MapSystemError(errno);
++#endif
+ int rv = setsockopt(socket_, IPPROTO_IP, IP_MULTICAST_IF,
++#if defined(OS_BSD)
++ reinterpret_cast<const char*>(&mreq.imr_interface.s_addr),
++ sizeof(mreq.imr_interface.s_addr));
++#else
+ reinterpret_cast<const char*>(&mreq), sizeof(mreq));
++#endif
+ if (rv)
+ return MapSystemError(errno);
+ break;
+@@ -905,7 +917,7 @@
if (addr_family_ != AF_INET)
return ERR_ADDRESS_INVALID;
diff --git a/www/chromium/files/patch-ppapi_tests_extensions_BUILD.gn b/www/chromium/files/patch-ppapi_tests_extensions_BUILD.gn
deleted file mode 100644
index 78bd36de1632..000000000000
--- a/www/chromium/files/patch-ppapi_tests_extensions_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- ppapi/tests/extensions/BUILD.gn.orig 2017-04-19 19:06:36 UTC
-+++ ppapi/tests/extensions/BUILD.gn
-@@ -20,7 +20,7 @@ group("extensions") {
- ":ppapi_tests_extensions_popup($newlib)",
- ":ppapi_tests_extensions_socket_permissions($newlib)",
- ]
-- if ((target_cpu == "x86" || target_cpu == "x64") && is_linux &&
-+ if ((target_cpu == "x86" || target_cpu == "x64") && (is_linux || is_bsd) &&
- enable_nacl_nonsfi) {
- nonsfi = "//build/toolchain/nacl:newlib_pnacl_nonsfi"
- data_deps += [ ":ppapi_tests_extensions_packaged_app($nonsfi)" ]
diff --git a/www/chromium/files/patch-printing_BUILD.gn b/www/chromium/files/patch-printing_BUILD.gn
deleted file mode 100644
index 102bf80abcab..000000000000
--- a/www/chromium/files/patch-printing_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- printing/BUILD.gn.orig 2017-06-05 19:03:10 UTC
-+++ printing/BUILD.gn
-@@ -141,7 +141,7 @@ component("printing") {
- if (use_cups) {
- configs += [ ":cups" ]
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- # rebase_path does not accept an empty string
- if (use_sysroot) {
- cups_sysroot = rebase_path(sysroot)
-@@ -220,7 +220,7 @@ component("printing") {
- "printing_context_no_system_dialog.cc",
- "printing_context_no_system_dialog.h",
- ]
-- } else if (is_linux) { # Non-ChromeOS Linux.
-+ } else if (is_linux || is_bsd) { # Non-ChromeOS Linux/BSD.
- sources += [
- "printed_document_linux.cc",
- "printing_context_linux.cc",
diff --git a/www/chromium/files/patch-remoting_host_remoting_me2me_host.cc b/www/chromium/files/patch-remoting_host_remoting_me2me_host.cc
index d65ca9694d9b..c63aae5b0f98 100644
--- a/www/chromium/files/patch-remoting_host_remoting_me2me_host.cc
+++ b/www/chromium/files/patch-remoting_host_remoting_me2me_host.cc
@@ -1,6 +1,6 @@
---- remoting/host/remoting_me2me_host.cc.orig 2017-08-10 16:32:38.654771000 +0200
-+++ remoting/host/remoting_me2me_host.cc 2017-08-10 16:35:22.486945000 +0200
-@@ -115,7 +115,7 @@
+--- remoting/host/remoting_me2me_host.cc.orig 2017-12-15 02:04:23.000000000 +0100
++++ remoting/host/remoting_me2me_host.cc 2017-12-24 17:46:36.226255000 +0100
+@@ -116,14 +116,14 @@
#include "base/mac/scoped_cftyperef.h"
#endif // defined(OS_MACOSX)
@@ -9,7 +9,15 @@
#include <gtk/gtk.h>
#include <X11/Xlib.h>
#undef Status // Xlib.h #defines this, which breaks protobuf headers.
-@@ -157,7 +157,7 @@
+ #include <base/linux_util.h>
+ #include "remoting/host/audio_capturer_linux.h"
+ #include "remoting/host/linux/certificate_watcher.h"
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ #if defined(OS_WIN)
+ #include <commctrl.h>
+@@ -158,11 +158,11 @@
const char kStdinConfigPath[] = "-";
#endif // !defined(REMOTING_MULTI_PROCESS)
@@ -18,7 +26,12 @@
// The command line switch used to pass name of the pipe to capture audio on
// linux.
const char kAudioPipeSwitchName[] = "audio-pipe-name";
-@@ -346,7 +346,7 @@
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ #if defined(OS_POSIX)
+ // The command line switch used to pass name of the unix domain socket used to
+@@ -353,7 +353,7 @@
std::unique_ptr<ChromotingHostContext> context_;
@@ -27,7 +40,7 @@
// Watch for certificate changes and kill the host when changes occur
std::unique_ptr<CertificateWatcher> cert_watcher_;
#endif
-@@ -540,7 +540,7 @@
+@@ -566,10 +566,10 @@
enable_window_capture_ = cmd_line->HasSwitch(kWindowIdSwitchName);
if (enable_window_capture_) {
@@ -35,8 +48,12 @@
+#if defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD)
LOG(WARNING) << "Window capturing is not fully supported on Linux or "
"Windows.";
- #endif // defined(OS_LINUX) || defined(OS_WIN)
-@@ -736,7 +736,7 @@
+-#endif // defined(OS_LINUX) || defined(OS_WIN)
++#endif // defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD)
+
+ // uint32_t is large enough to hold window IDs on all platforms.
+ uint32_t window_id;
+@@ -762,7 +762,7 @@
DCHECK(third_party_auth_config_.token_url.is_valid());
DCHECK(third_party_auth_config_.token_validation_url.is_valid());
@@ -45,7 +62,7 @@
if (!cert_watcher_) {
cert_watcher_.reset(new CertificateWatcher(
base::Bind(&HostProcess::ShutdownHost, this, kSuccessExitCode),
-@@ -815,7 +815,7 @@
+@@ -848,7 +848,7 @@
base::Bind(&HostProcess::OnPolicyUpdate, base::Unretained(this)),
base::Bind(&HostProcess::OnPolicyError, base::Unretained(this)));
@@ -54,7 +71,16 @@
// If an audio pipe is specific on the command-line then initialize
// AudioCapturerLinux to capture from it.
base::FilePath audio_pipe_name = base::CommandLine::ForCurrentProcess()->
-@@ -880,7 +880,7 @@
+@@ -857,7 +857,7 @@
+ remoting::AudioCapturerLinux::InitializePipeReader(
+ context_->audio_task_runner(), audio_pipe_name);
+ }
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+
+ #if defined(OS_POSIX)
+ base::FilePath security_key_socket_name =
+@@ -915,7 +915,7 @@
// It is now safe for the HostProcess to be deleted.
self_ = nullptr;
@@ -63,8 +89,8 @@
// Cause the global AudioPipeReader to be freed, otherwise the audio
// thread will remain in-use and prevent the process from exiting.
// TODO(wez): DesktopEnvironmentFactory should own the pipe reader.
-@@ -1494,7 +1494,7 @@
- }
+@@ -1547,7 +1547,7 @@
+ host_->AddExtension(base::MakeUnique<TestEchoExtension>());
// TODO(simonmorris): Get the maximum session duration from a policy.
-#if defined(OS_LINUX)
@@ -72,12 +98,12 @@
host_->SetMaximumSessionDuration(base::TimeDelta::FromHours(20));
#endif
-@@ -1654,7 +1654,7 @@
+@@ -1706,7 +1706,7 @@
int HostProcessMain() {
HOST_LOG << "Starting host process: version " << STRINGIZE(VERSION);
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- // Required in order for us to run multiple X11 threads.
- XInitThreads();
-
+ if (!base::CommandLine::ForCurrentProcess()->HasSwitch(
+ kReportOfflineReasonSwitchName)) {
+ // Required in order for us to run multiple X11 threads.
diff --git a/www/chromium/files/patch-sandbox_features.gni b/www/chromium/files/patch-sandbox_features.gni
index 37cebdfaf372..f3ca941032df 100644
--- a/www/chromium/files/patch-sandbox_features.gni
+++ b/www/chromium/files/patch-sandbox_features.gni
@@ -1,10 +1,10 @@
---- sandbox/features.gni.orig 2017-04-19 19:06:37 UTC
-+++ sandbox/features.gni
-@@ -11,6 +11,6 @@ import("//build/config/nacl/config.gni")
- use_seccomp_bpf =
+--- sandbox/features.gni.orig 2017-12-15 02:04:24.000000000 +0100
++++ sandbox/features.gni 2017-12-24 17:50:45.309732000 +0100
+@@ -12,6 +12,6 @@
(is_linux || is_android) &&
(current_cpu == "x86" || current_cpu == "x64" || current_cpu == "arm" ||
-- current_cpu == "arm64" || current_cpu == "mipsel")
-+ current_cpu == "arm64" || current_cpu == "mipsel") && !is_bsd
+ current_cpu == "arm64" || current_cpu == "mipsel" ||
+- current_cpu == "mips64el")
++ current_cpu == "mips64el") && !is_bsd
use_seccomp_bpf = use_seccomp_bpf || is_nacl_nonsfi
diff --git a/www/chromium/files/patch-sdch_BUILD.gn b/www/chromium/files/patch-sdch_BUILD.gn
deleted file mode 100644
index 59dce95fe660..000000000000
--- a/www/chromium/files/patch-sdch_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- sdch/BUILD.gn.orig 2017-09-05 21:05:23.000000000 +0200
-+++ sdch/BUILD.gn 2017-09-06 21:01:49.902976000 +0200
-@@ -11,7 +11,7 @@
- # from a config and can't be on the target directly.
- config("sdch_warnings") {
- cflags = []
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- # TODO(mostynb): remove this if open-vcdiff is ever updated for c++11:
- cflags += [ "-Wno-deprecated-declarations" ]
- }
-@@ -59,7 +59,7 @@
- "//third_party/zlib",
- ]
-
-- if (is_linux || is_android || is_fuchsia) {
-+ if (is_linux || is_bsd || is_android || is_fuchsia) {
- include_dirs = [ "linux" ]
- } else if (is_ios) {
- include_dirs = [ "ios" ]
diff --git a/www/chromium/files/patch-services_device_battery_BUILD.gn b/www/chromium/files/patch-services_device_battery_BUILD.gn
deleted file mode 100644
index 726507d9ab8d..000000000000
--- a/www/chromium/files/patch-services_device_battery_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- services/device/battery/BUILD.gn.orig 2017-08-10 00:52:26.222691000 +0200
-+++ services/device/battery/BUILD.gn 2017-08-10 00:54:24.988698000 +0200
-@@ -51,7 +51,7 @@
- ]
- }
-
-- if (is_linux && !is_chromeos) {
-+ if ((is_linux || is_bsd) && !is_chromeos) {
- if (use_dbus) {
- configs += [ "//build/config/linux/dbus" ]
- deps += [ "//dbus" ]
diff --git a/www/chromium/files/patch-services_ui_gpu_gpu__main.cc b/www/chromium/files/patch-services_ui_gpu_gpu__main.cc
deleted file mode 100644
index 4ccd06a90cfb..000000000000
--- a/www/chromium/files/patch-services_ui_gpu_gpu__main.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- services/ui/gpu/gpu_main.cc.orig 2017-06-05 19:03:11 UTC
-+++ services/ui/gpu/gpu_main.cc
-@@ -64,7 +64,7 @@ GpuMain::GpuMain(mojom::GpuMainRequest request)
- // runtime.
- thread_options.message_loop_type =
- ui::OzonePlatform::EnsureInstance()->GetMessageLoopTypeForGpu();
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_BSD)
- thread_options.message_loop_type = base::MessageLoop::TYPE_DEFAULT;
- #elif defined(OS_MACOSX)
- thread_options.message_pump_factory = base::Bind(&CreateMessagePumpMac);
diff --git a/www/chromium/files/patch-services_ui_gpu_gpu__service.cc b/www/chromium/files/patch-services_ui_gpu_gpu__service.cc
deleted file mode 100644
index 791f589920b1..000000000000
--- a/www/chromium/files/patch-services_ui_gpu_gpu__service.cc
+++ /dev/null
@@ -1,29 +0,0 @@
---- services/ui/gpu/gpu_service.cc.orig 2017-06-05 19:03:11 UTC
-+++ services/ui/gpu/gpu_service.cc
-@@ -269,7 +269,7 @@ void GpuService::RequestCompleteGpuInfo(
- }
- UpdateGpuInfoPlatform();
- callback.Run(gpu_info_);
--#if defined(OS_WIN)
-+#if defined(OS_WIN) && !defined(OS_BSD)
- if (!in_host_process_) {
- // The unsandboxed GPU process fulfilled its duty. Rest in peace.
- base::MessageLoop::current()->QuitWhenIdle();
-@@ -305,7 +305,7 @@ void GpuService::UpdateGpuInfoPlatform() {
- }
- gpu::SetKeysForCrashLogging(gpu_info_);
- }
--#elif defined(OS_WIN)
-+#elif defined(OS_WIN) && !defined(OS_BSD)
- void GpuService::UpdateGpuInfoPlatform() {
- DCHECK(main_runner_->BelongsToCurrentThread());
- // GPU full info collection should only happen on un-sandboxed GPU process
-@@ -353,7 +353,7 @@ void GpuService::StoreShaderToDisk(int client_id,
- (*gpu_host_)->StoreShaderToDisk(client_id, key, shader);
- }
-
--#if defined(OS_WIN)
-+#if defined(OS_WIN) && !defined(OS_BSD)
- void GpuService::SendAcceleratedSurfaceCreatedChildWindow(
- gpu::SurfaceHandle parent_window,
- gpu::SurfaceHandle child_window) {
diff --git a/www/chromium/files/patch-skia_BUILD.gn b/www/chromium/files/patch-skia_BUILD.gn
deleted file mode 100644
index c9a86cb44e65..000000000000
--- a/www/chromium/files/patch-skia_BUILD.gn
+++ /dev/null
@@ -1,38 +0,0 @@
---- skia/BUILD.gn.orig 2017-08-10 02:56:11.705896000 +0200
-+++ skia/BUILD.gn 2017-08-10 02:58:58.077496000 +0200
-@@ -141,7 +141,7 @@
- }
-
- # Settings for text blitting, chosen to approximate the system browser.
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- defines += [
- "SK_GAMMA_EXPONENT=1.2",
- "SK_GAMMA_CONTRAST=0.2",
-@@ -374,7 +374,7 @@
- set_sources_assignment_filter(sources_assignment_filter)
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "//third_party/skia/src/ports/SkFontConfigInterface.cpp",
- "//third_party/skia/src/ports/SkFontConfigInterface_direct.cpp",
-@@ -383,7 +383,7 @@
- ]
- }
-
-- if (is_linux || is_android) {
-+ if (is_linux || is_android || is_bsd) {
- sources += [
- # Retain the files for the SkFontMgr_Android on linux to emulate android
- # fonts. See content/zygote/zygote_main_linux.cc
-@@ -441,7 +441,7 @@
- deps -= [ "//third_party:jpeg" ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- if (use_pango) {
- configs += [
- # libpng_config will be included automatically from deps. We do this
diff --git a/www/chromium/files/patch-third__party_WebKit_Source_core_layout_BUILD.gn b/www/chromium/files/patch-third__party_WebKit_Source_core_layout_BUILD.gn
deleted file mode 100644
index 434cbd51c8b1..000000000000
--- a/www/chromium/files/patch-third__party_WebKit_Source_core_layout_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/WebKit/Source/core/layout/BUILD.gn.orig 2017-06-05 19:03:25 UTC
-+++ third_party/WebKit/Source/core/layout/BUILD.gn
-@@ -452,7 +452,7 @@ blink_core_sources("layout") {
- sources += [ "LayoutThemeFontProviderDefault.cpp" ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "LayoutThemeLinux.cpp",
- "LayoutThemeLinux.h",
diff --git a/www/chromium/files/patch-third__party_WebKit_Source_platform_BUILD.gn b/www/chromium/files/patch-third__party_WebKit_Source_platform_BUILD.gn
new file mode 100644
index 000000000000..a1630e151f0d
--- /dev/null
+++ b/www/chromium/files/patch-third__party_WebKit_Source_platform_BUILD.gn
@@ -0,0 +1,10 @@
+--- third_party/WebKit/Source/platform/BUILD.gn.orig 2017-12-31 11:16:52.912677000 +0100
++++ third_party/WebKit/Source/platform/BUILD.gn 2017-12-31 11:18:02.966134000 +0100
+@@ -148,6 +148,7 @@
+ "//build/win:default_exe_manifest",
+ "//third_party/icu",
+ ]
++ libs = [ "cxxrt" ]
+ }
+
+ # This isn't strictly necessary since we can just add the deps to "platform",
diff --git a/www/chromium/files/patch-third__party_WebKit_Source_platform_fonts_FontPlatformData.cpp b/www/chromium/files/patch-third__party_WebKit_Source_platform_fonts_FontPlatformData.cpp
index b8a201a70824..d4dfece88ebb 100644
--- a/www/chromium/files/patch-third__party_WebKit_Source_platform_fonts_FontPlatformData.cpp
+++ b/www/chromium/files/patch-third__party_WebKit_Source_platform_fonts_FontPlatformData.cpp
@@ -1,34 +1,34 @@
---- third_party/WebKit/Source/platform/fonts/FontPlatformData.cpp.orig 2017-09-05 21:05:41.000000000 +0200
-+++ third_party/WebKit/Source/platform/fonts/FontPlatformData.cpp 2017-09-06 21:40:15.799533000 +0200
-@@ -92,7 +92,7 @@
- synthetic_bold_(source.synthetic_bold_),
+--- third_party/WebKit/Source/platform/fonts/FontPlatformData.cpp.orig 2017-12-15 02:04:47.000000000 +0100
++++ third_party/WebKit/Source/platform/fonts/FontPlatformData.cpp 2017-12-24 18:18:08.481217000 +0100
+@@ -96,7 +96,7 @@
synthetic_italic_(source.synthetic_italic_),
+ avoid_embedded_bitmaps_(source.avoid_embedded_bitmaps_),
orientation_(source.orientation_),
-#if defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
style_(source.style_),
#endif
harf_buzz_face_(nullptr),
-@@ -113,7 +113,7 @@
- synthetic_bold_(src.synthetic_bold_),
+@@ -118,7 +118,7 @@
synthetic_italic_(src.synthetic_italic_),
+ avoid_embedded_bitmaps_(false),
orientation_(src.orientation_),
-#if defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
style_(FontRenderStyle::QuerySystem(family_,
text_size_,
typeface_->fontStyle())),
-@@ -144,7 +144,7 @@
- synthetic_bold_(synthetic_bold),
+@@ -150,7 +150,7 @@
synthetic_italic_(synthetic_italic),
+ avoid_embedded_bitmaps_(false),
orientation_(orientation),
-#if defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
style_(FontRenderStyle::QuerySystem(family_,
text_size_,
typeface_->fontStyle())),
-@@ -189,7 +189,7 @@
- synthetic_italic_ = other.synthetic_italic_;
+@@ -196,7 +196,7 @@
+ avoid_embedded_bitmaps_ = other.avoid_embedded_bitmaps_;
harf_buzz_face_ = nullptr;
orientation_ = other.orientation_;
-#if defined(OS_LINUX) || defined(OS_ANDROID)
@@ -36,10 +36,10 @@
style_ = other.style_;
#endif
-@@ -213,7 +213,7 @@
- is_hash_table_deleted_value_ == a.is_hash_table_deleted_value_ &&
+@@ -221,7 +221,7 @@
synthetic_bold_ == a.synthetic_bold_ &&
- synthetic_italic_ == a.synthetic_italic_
+ synthetic_italic_ == a.synthetic_italic_ &&
+ avoid_embedded_bitmaps_ == a.avoid_embedded_bitmaps_
-#if defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD)
&& style_ == a.style_
diff --git a/www/chromium/files/patch-third__party_WebKit_Source_platform_wtf_BUILD.gn b/www/chromium/files/patch-third__party_WebKit_Source_platform_wtf_BUILD.gn
index c29d6c47a1ff..fd22013f35d8 100644
--- a/www/chromium/files/patch-third__party_WebKit_Source_platform_wtf_BUILD.gn
+++ b/www/chromium/files/patch-third__party_WebKit_Source_platform_wtf_BUILD.gn
@@ -1,13 +1,16 @@
---- third_party/WebKit/Source/platform/wtf/BUILD.gn.orig 2017-06-05 19:03:26 UTC
-+++ third_party/WebKit/Source/platform/wtf/BUILD.gn
-@@ -315,6 +315,10 @@ component("platform_wtf") {
- libs = [ "dl" ]
+--- third_party/WebKit/Source/platform/wtf/BUILD.gn.orig 2017-12-15 02:04:47.000000000 +0100
++++ third_party/WebKit/Source/platform/wtf/BUILD.gn 2017-12-30 01:24:23.342711000 +0100
+@@ -302,8 +302,12 @@
+ if (is_android) {
+ libs = [ "log" ]
}
-
-+ if (is_bsd) {
-+ libs = [ "execinfo" ]
+- if (is_linux) {
++ if (is_linux && !is_bsd) {
+ libs = [ "dl" ]
+ }
+
++ if (is_bsd) {
++ libs = [ "execinfo" ]
+ }
+
if (is_mac) {
- libs = [
- "CoreFoundation.framework",
diff --git a/www/chromium/files/patch-third__party_angle_src_gpu_info_util_SystemInfo_x11.cpp b/www/chromium/files/patch-third__party_angle_src_gpu_info_util_SystemInfo_x11.cpp
index 699c142aae1e..1bb84ac0aa33 100644
--- a/www/chromium/files/patch-third__party_angle_src_gpu_info_util_SystemInfo_x11.cpp
+++ b/www/chromium/files/patch-third__party_angle_src_gpu_info_util_SystemInfo_x11.cpp
@@ -1,5 +1,5 @@
---- third_party/angle/src/gpu_info_util/SystemInfo_x11.cpp.orig 2017-09-10 02:37:35.309513000 +0200
-+++ third_party/angle/src/gpu_info_util/SystemInfo_x11.cpp 2017-09-10 02:48:01.225261000 +0200
+--- third_party/angle/src/gpu_info_util/SystemInfo_x11.cpp.orig 2017-12-15 02:05:36.000000000 +0100
++++ third_party/angle/src/gpu_info_util/SystemInfo_x11.cpp 2017-12-30 05:11:53.917801000 +0100
@@ -8,6 +8,8 @@
#include "gpu_info_util/SystemInfo_internal.h"
@@ -35,14 +35,14 @@
+
+ bool vendor_ret =
+ queryInteger(display, 0, 0, GLX_RENDERER_VENDOR_ID_MESA, vid);
-+ bool_device_ret =
++ bool device_ret =
+ queryInteger(display, 0, 0, GLX_RENDERER_DEVICE_ID_MESA, did);
+
+ if (vendor_ret && device_ret) {
+ GPUDeviceInfo info;
+ info.vendorId = vid[0];
+ info.deviceId = did[0];
-+ device->push_back(info);
++ devices->push_back(info);
+ }
+
+ return true;
diff --git a/www/chromium/files/patch-third__party_angle_src_tests_BUILD.gn b/www/chromium/files/patch-third__party_angle_src_tests_BUILD.gn
deleted file mode 100644
index 24bf0748822b..000000000000
--- a/www/chromium/files/patch-third__party_angle_src_tests_BUILD.gn
+++ /dev/null
@@ -1,65 +0,0 @@
---- third_party/angle/src/tests/BUILD.gn.orig 2017-06-05 19:04:15 UTC
-+++ third_party/angle/src/tests/BUILD.gn
-@@ -41,7 +41,7 @@ test("angle_unittests") {
- ]
- }
-
--if (is_win || is_linux || is_mac || is_android) {
-+if (is_win || is_linux || is_mac || is_android || is_bsd) {
- end2end_gypi = exec_script("//build/gypi_to_gn.py",
- [
- rebase_path("angle_end2end_tests.gypi"),
-@@ -82,7 +82,7 @@ if (is_win || is_linux || is_mac || is_android) {
- "//third_party/angle:libANGLE_config",
- ]
-
-- if (is_linux && !is_component_build) {
-+ if ((is_linux || is_bsd) && !is_component_build) {
- # Set rpath to find libEGL.so and libGLESv2.so even in a non-component build.
- configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
- }
-@@ -230,7 +230,7 @@ if (build_angle_deqp_tests) {
- # Ask the system headers to expose all the regular function otherwise
- # dEQP doesn't compile and produces warnings about implicitly defined
- # functions.
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- # This has to be GNU_SOURCE as on Linux dEQP uses syscall()
- defines += [ "_GNU_SOURCE" ]
- }
-@@ -253,7 +253,7 @@ if (build_angle_deqp_tests) {
- ]
- }
-
-- if (is_linux || is_android) {
-+ if (is_linux || is_android || is_bsd) {
- deqp_undefine_configs += [ "//build/config/gcc:no_exceptions" ]
- }
-
-@@ -290,7 +290,7 @@ if (build_angle_deqp_tests) {
- if (is_win) {
- sources += rebase_path(deqp_gypi.deqp_libtester_sources_win, ".", "../..")
- }
-- if (is_linux || is_android) {
-+ if (is_linux || is_android || is_bsd) {
- sources +=
- rebase_path(deqp_gypi.deqp_libtester_sources_unix, ".", "../..")
- }
-@@ -320,7 +320,7 @@ if (build_angle_deqp_tests) {
-
- # Taken from gpu/BUILD.gn
- # TODO(jmadill): this should be in a shared location
-- if (is_linux && !is_chromecast) {
-+ if ((is_linux || is_bsd) && !is_chromecast) {
- libs = [ "pci" ]
- }
- }
-@@ -396,7 +396,7 @@ if (build_angle_deqp_tests) {
- "../../../deqp/src/data/",
- ]
-
-- if (is_linux && !is_component_build) {
-+ if ((is_linux || is_bsd) && !is_component_build) {
- # Set rpath to find *.so files even in a non-component build.
- configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
- }
diff --git a/www/chromium/files/patch-third__party_breakpad_breakpad_src_common_simple_string_dictionary.h b/www/chromium/files/patch-third__party_breakpad_breakpad_src_common_simple_string_dictionary.h
new file mode 100644
index 000000000000..f98c620acc5f
--- /dev/null
+++ b/www/chromium/files/patch-third__party_breakpad_breakpad_src_common_simple_string_dictionary.h
@@ -0,0 +1,11 @@
+--- third_party/breakpad/breakpad/src/common/simple_string_dictionary.h.orig 2017-12-23 22:07:26.606040000 +0100
++++ third_party/breakpad/breakpad/src/common/simple_string_dictionary.h 2017-12-23 22:08:01.480046000 +0100
+@@ -33,7 +33,7 @@
+ #include <assert.h>
+ #include <string.h>
+
+-#include "common/basictypes.h"
++#include "third_party/breakpad/breakpad/src/common/basictypes.h"
+
+ namespace google_breakpad {
+
diff --git a/www/chromium/files/patch-third__party_expat_BUILD.gn b/www/chromium/files/patch-third__party_expat_BUILD.gn
deleted file mode 100644
index fbeedbf42477..000000000000
--- a/www/chromium/files/patch-third__party_expat_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/expat/BUILD.gn.orig 2017-06-05 19:03:27 UTC
-+++ third_party/expat/BUILD.gn
-@@ -9,7 +9,7 @@ import("//testing/libfuzzer/fuzzer_test.gni")
- # let's not pull it in twice.
- # Chromecast doesn't ship expat as a system library.
- # Libfuzzer and AFL need to build library from sources.
--if (is_linux && !is_chromecast && !use_libfuzzer && !use_afl) {
-+if ((is_linux || is_bsd) && !is_chromecast && !use_libfuzzer && !use_afl) {
- config("expat_config") {
- libs = [ "expat" ]
- }
diff --git a/www/chromium/files/patch-third__party_ffmpeg_chromium_scripts_generate_gn.py b/www/chromium/files/patch-third__party_ffmpeg_chromium_scripts_generate_gn.py
deleted file mode 100644
index 7aff0b5eeb46..000000000000
--- a/www/chromium/files/patch-third__party_ffmpeg_chromium_scripts_generate_gn.py
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/ffmpeg/chromium/scripts/generate_gn.py.orig 2017-09-06 23:01:27.764648000 +0200
-+++ third_party/ffmpeg/chromium/scripts/generate_gn.py 2017-09-06 23:06:22.774520000 +0200
-@@ -54,7 +54,7 @@
- ffmpeg_gas_sources = []
- ffmpeg_yasm_sources = []
-
--use_linux_config = is_linux || is_fuchsia
-+use_linux_config = is_linux || is_fuchsia || is_bsd
-
- """
- GN_CONDITION_BEGIN = """if (%s) {
diff --git a/www/chromium/files/patch-third__party_ffmpeg_ffmpeg__generated.gni b/www/chromium/files/patch-third__party_ffmpeg_ffmpeg__generated.gni
deleted file mode 100644
index 2fead011b0fb..000000000000
--- a/www/chromium/files/patch-third__party_ffmpeg_ffmpeg__generated.gni
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/ffmpeg/ffmpeg_generated.gni.orig 2017-09-05 21:06:47.000000000 +0200
-+++ third_party/ffmpeg/ffmpeg_generated.gni 2017-09-06 22:55:03.146139000 +0200
-@@ -12,7 +12,7 @@
- ffmpeg_gas_sources = []
- ffmpeg_yasm_sources = []
-
--use_linux_config = is_linux || is_fuchsia
-+use_linux_config = is_linux || is_fuchsia || is_bsd
-
- if ((is_android && current_cpu == "arm" && arm_use_neon) || (is_android && current_cpu == "arm64") || (is_android && current_cpu == "mips64el") || (is_android && current_cpu == "mipsel") || (is_android && current_cpu == "x64") || (is_android && current_cpu == "x86") || (is_mac) || (is_win) || (use_linux_config && current_cpu == "arm" && arm_use_neon) || (use_linux_config && current_cpu == "arm") || (use_linux_config && current_cpu == "arm64") || (use_linux_config && current_cpu == "mipsel") || (use_linux_config && current_cpu == "x64") || (use_linux_config && current_cpu == "x86")) {
- ffmpeg_c_sources += [
diff --git a/www/chromium/files/patch-third__party_fontconfig_BUILD.gn b/www/chromium/files/patch-third__party_fontconfig_BUILD.gn
deleted file mode 100644
index 625815dfd919..000000000000
--- a/www/chromium/files/patch-third__party_fontconfig_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/fontconfig/BUILD.gn.orig 2017-09-05 21:05:43.000000000 +0200
-+++ third_party/fontconfig/BUILD.gn 2017-09-07 02:56:21.302663000 +0200
-@@ -4,7 +4,7 @@
-
- import("//third_party/fontconfig/fontconfig.gni")
-
--assert(is_linux)
-+assert(is_linux || is_bsd)
-
- if (use_bundled_fontconfig) {
- config("fontconfig_config") {
diff --git a/www/chromium/files/patch-third__party_fontconfig_fontconfig.gni b/www/chromium/files/patch-third__party_fontconfig_fontconfig.gni
deleted file mode 100644
index 8d9696ca8674..000000000000
--- a/www/chromium/files/patch-third__party_fontconfig_fontconfig.gni
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/fontconfig/fontconfig.gni.orig 2017-09-07 02:53:31.090545000 +0200
-+++ third_party/fontconfig/fontconfig.gni 2017-09-07 02:53:38.833794000 +0200
-@@ -4,7 +4,7 @@
-
- import("//build/config/features.gni")
-
--assert(is_linux)
-+assert(is_linux || is_bsd)
-
- declare_args() {
- use_bundled_fontconfig = is_chromecast
diff --git a/www/chromium/files/patch-third__party_glslang_BUILD.gn b/www/chromium/files/patch-third__party_glslang_BUILD.gn
deleted file mode 100644
index dda33f071ba2..000000000000
--- a/www/chromium/files/patch-third__party_glslang_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- third_party/glslang/BUILD.gn.orig 2017-04-19 19:06:51 UTC
-+++ third_party/glslang/BUILD.gn
-@@ -8,7 +8,7 @@ config("glslang_config") {
- include_dirs = [ "src" ]
-
- defines = []
-- if (is_linux || is_android) {
-+ if (is_linux || is_bsd || is_android) {
- defines += [ "GLSLANG_OSINCLUDE_UNIX" ]
- } else if (is_win) {
- defines += [ "GLSLANG_OSINCLUDE_WIN32" ]
-@@ -132,7 +132,7 @@ static_library("glslang") {
- "src/glslang/Public/ShaderLang.h",
- ]
-
-- if (is_linux || is_android) {
-+ if (is_linux || is_bsd || is_android) {
- sources += [ "src/glslang/OSDependent/Unix/ossource.cpp" ]
- } else if (is_win) {
- sources += [
diff --git a/www/chromium/files/patch-third__party_libXNVCtrl_NVCtrl.c b/www/chromium/files/patch-third__party_libXNVCtrl_NVCtrl.c
new file mode 100644
index 000000000000..2810288f5d1b
--- /dev/null
+++ b/www/chromium/files/patch-third__party_libXNVCtrl_NVCtrl.c
@@ -0,0 +1,25 @@
+--- third_party/libXNVCtrl/NVCtrl.c.orig 2017-12-30 16:57:06.449527000 +0100
++++ third_party/libXNVCtrl/NVCtrl.c 2017-12-30 16:57:57.055972000 +0100
+@@ -27,10 +27,6 @@
+ * libXNVCtrl library properly protects the Display connection.
+ */
+
+-#if !defined(XTHREADS)
+-#define XTHREADS
+-#endif /* XTHREADS */
+-
+ #define NEED_EVENTS
+ #define NEED_REPLIES
+ #include <stdint.h>
+@@ -39,6 +35,11 @@
+ #include <X11/Xutil.h>
+ #include <X11/extensions/Xext.h>
+ #include <X11/extensions/extutil.h>
++
++#if !defined(XTHREADS)
++#define XTHREADS
++#endif /* XTHREADS */
++
+ #include "NVCtrlLib.h"
+ #include "nv_control.h"
+
diff --git a/www/chromium/files/patch-third__party_libxslt_BUILD.gn b/www/chromium/files/patch-third__party_libxslt_BUILD.gn
deleted file mode 100644
index d4e07a9f4735..000000000000
--- a/www/chromium/files/patch-third__party_libxslt_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/libxslt/BUILD.gn.orig 2017-04-19 19:06:52 UTC
-+++ third_party/libxslt/BUILD.gn
-@@ -82,7 +82,7 @@ static_library("libxslt") {
- public_configs = [ ":libxslt_config" ]
-
- cflags = []
-- if (is_linux || is_android) {
-+ if (is_linux || is_bsd || is_android) {
- include_dirs = [ "linux" ]
- } else if (is_win) {
- include_dirs = [ "win32" ]
diff --git a/www/chromium/files/patch-third__party_minigbm_BUILD.gn b/www/chromium/files/patch-third__party_minigbm_BUILD.gn
deleted file mode 100644
index 68ed5d26997e..000000000000
--- a/www/chromium/files/patch-third__party_minigbm_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/minigbm/BUILD.gn.orig 2017-04-19 19:06:52 UTC
-+++ third_party/minigbm/BUILD.gn
-@@ -4,7 +4,7 @@
-
- import("//build/config/linux/pkg_config.gni")
-
--assert(is_linux)
-+assert(is_linux || is_bsd)
-
- declare_args() {
- # Controls whether the build should use the version of minigbm library
diff --git a/www/chromium/files/patch-third__party_opus_BUILD.gn b/www/chromium/files/patch-third__party_opus_BUILD.gn
deleted file mode 100644
index 91a2223147d3..000000000000
--- a/www/chromium/files/patch-third__party_opus_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/opus/BUILD.gn.orig 2017-06-05 19:03:28 UTC
-+++ third_party/opus/BUILD.gn
-@@ -14,7 +14,7 @@ use_opus_arm_optimization = current_cpu == "arm"
- # If OPUS Run Time CPU Detections (RTCD) shall be used.
- # Based on the conditions in celt/arm/armcpu.c:
- # defined(_MSC_VER) || defined(__linux__).
--use_opus_rtcd = current_cpu == "arm" && (is_win || is_android || is_linux)
-+use_opus_rtcd = current_cpu == "arm" && (is_win || is_android || is_linux || is_bsd)
-
- config("opus_config") {
- include_dirs = [ "src/include" ]
diff --git a/www/chromium/files/patch-third__party_pdfium_BUILD.gn b/www/chromium/files/patch-third__party_pdfium_BUILD.gn
deleted file mode 100644
index d1298098490a..000000000000
--- a/www/chromium/files/patch-third__party_pdfium_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- third_party/pdfium/BUILD.gn.orig 2017-06-05 19:04:21 UTC
-+++ third_party/pdfium/BUILD.gn
-@@ -75,7 +75,7 @@ config("pdfium_core_config") {
- cflags = []
- configs = [ ":pdfium_common_config" ]
- defines = [ "V8_DEPRECATION_WARNINGS" ]
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- if (current_cpu == "x64") {
- defines += [ "_FX_CPU_=_FX_X64_" ]
- cflags += [ "-fPIC" ]
diff --git a/www/chromium/files/patch-third__party_pdfium_core_fxcrt_fx__system.h b/www/chromium/files/patch-third__party_pdfium_core_fxcrt_fx__system.h
index 582042a88fee..95914efb0cb0 100644
--- a/www/chromium/files/patch-third__party_pdfium_core_fxcrt_fx__system.h
+++ b/www/chromium/files/patch-third__party_pdfium_core_fxcrt_fx__system.h
@@ -1,11 +1,11 @@
---- third_party/pdfium/core/fxcrt/fx_system.h.orig 2017-04-19 19:07:50 UTC
-+++ third_party/pdfium/core/fxcrt/fx_system.h
+--- third_party/pdfium/core/fxcrt/fx_system.h.orig 2017-12-15 02:05:39.000000000 +0100
++++ third_party/pdfium/core/fxcrt/fx_system.h 2017-12-24 18:45:42.922884000 +0100
@@ -40,7 +40,7 @@
#elif defined(_WIN64)
- #define _FX_OS_ _FX_WIN64_DESKTOP_
- #define _FXM_PLATFORM_ _FXM_PLATFORM_WINDOWS_
+ #define _FX_OS_ _FX_OS_WIN64_
+ #define _FX_PLATFORM_ _FX_PLATFORM_WINDOWS_
-#elif defined(__linux__)
+#elif defined(__linux__) || defined(__FreeBSD__)
- #define _FX_OS_ _FX_LINUX_DESKTOP_
- #define _FXM_PLATFORM_ _FXM_PLATFORM_LINUX_
+ #define _FX_OS_ _FX_OS_LINUX_
+ #define _FX_PLATFORM_ _FX_PLATFORM_LINUX_
#elif defined(__APPLE__)
diff --git a/www/chromium/files/patch-third__party_pdfium_fpdfsdk_javascript_JS__Value.cpp b/www/chromium/files/patch-third__party_pdfium_fpdfsdk_javascript_JS__Value.cpp
index c9ae8a47cf6f..8c635e844f0a 100644
--- a/www/chromium/files/patch-third__party_pdfium_fpdfsdk_javascript_JS__Value.cpp
+++ b/www/chromium/files/patch-third__party_pdfium_fpdfsdk_javascript_JS__Value.cpp
@@ -1,9 +1,9 @@
---- third_party/pdfium/fpdfsdk/javascript/JS_Value.cpp.orig 2017-09-05 21:06:52.000000000 +0200
-+++ third_party/pdfium/fpdfsdk/javascript/JS_Value.cpp 2017-09-07 00:04:22.552844000 +0200
-@@ -44,7 +44,12 @@
+--- third_party/pdfium/fpdfsdk/javascript/JS_Value.cpp.orig 2017-12-15 02:05:39.000000000 +0100
++++ third_party/pdfium/fpdfsdk/javascript/JS_Value.cpp 2017-12-24 18:51:32.588224000 +0100
+@@ -37,7 +37,12 @@
long timezone = 0;
_get_timezone(&timezone);
- #endif
+ #endif // _FX_PLATFORM_ == _FX_PLATFORM_WINDOWS_
+#ifdef __FreeBSD__
+ struct tm *lt;
+ return (double)(-(lt->tm_gmtoff * 1000));
diff --git a/www/chromium/files/patch-third__party_pdfium_fpdfsdk_javascript_PublicMethods.cpp b/www/chromium/files/patch-third__party_pdfium_fpdfsdk_javascript_PublicMethods.cpp
index 62e17eb90ec9..7ea931bddc94 100644
--- a/www/chromium/files/patch-third__party_pdfium_fpdfsdk_javascript_PublicMethods.cpp
+++ b/www/chromium/files/patch-third__party_pdfium_fpdfsdk_javascript_PublicMethods.cpp
@@ -1,6 +1,6 @@
---- third_party/pdfium/fpdfsdk/javascript/PublicMethods.cpp.orig 2017-06-05 19:04:22 UTC
-+++ third_party/pdfium/fpdfsdk/javascript/PublicMethods.cpp
-@@ -68,6 +68,103 @@ const wchar_t* const fullmonths[] = {L"January", L"Feb
+--- third_party/pdfium/fpdfsdk/javascript/PublicMethods.cpp.orig 2017-12-31 05:03:16.422190000 +0100
++++ third_party/pdfium/fpdfsdk/javascript/PublicMethods.cpp 2017-12-31 05:11:19.941348000 +0100
+@@ -70,6 +70,103 @@
L"July", L"August", L"September",
L"October", L"November", L"December"};
@@ -97,10 +97,10 @@
+static char *
+ fcvt(double arg, int ndigits, int *decpt, int *sign)
+{
-+ return (ap_cvt(arg, ndigits, decpt, sign, 0));
++ return (ap_cvt(arg, ndigits, decpt, sign, 0));
+}
+#endif // defined(__FreeBSD__)
+
- CFX_ByteString StrTrim(const CFX_ByteString& pStr) {
- CFX_ByteString result(pStr);
+ ByteString StrTrim(const ByteString& pStr) {
+ ByteString result(pStr);
result.TrimLeft(' ');
diff --git a/www/chromium/files/patch-third__party_pdfium_skia_BUILD.gn b/www/chromium/files/patch-third__party_pdfium_skia_BUILD.gn
deleted file mode 100644
index 12dcc27962d7..000000000000
--- a/www/chromium/files/patch-third__party_pdfium_skia_BUILD.gn
+++ /dev/null
@@ -1,29 +0,0 @@
---- third_party/pdfium/skia/BUILD.gn.orig 2017-06-05 19:04:22 UTC
-+++ third_party/pdfium/skia/BUILD.gn
-@@ -114,7 +114,7 @@ config("skia_library_config") {
- }
-
- # Settings for text blitting, chosen to approximate the system browser.
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- defines += [
- "SK_GAMMA_EXPONENT=1.2",
- "SK_GAMMA_CONTRAST=0.2",
-@@ -290,7 +290,7 @@ component("skia") {
- "//third_party/skia/src/ports/SkFontMgr_android_parser.cpp",
- ]
- }
-- if (!is_linux && !is_android && !is_win && !is_mac) {
-+ if (!is_linux && !is_android && !is_win && !is_mac || !is_bsd) {
- sources -= [
- "//third_party/skia/src/ports/SkFontHost_FreeType.cpp",
- "//third_party/skia/src/ports/SkFontHost_FreeType_common.cpp",
-@@ -320,7 +320,7 @@ component("skia") {
- "//third_party/zlib:zlib",
- ]
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- deps += [ "//third_party/icu:icuuc" ]
- }
-
diff --git a/www/chromium/files/patch-third__party_pdfium_xfa_fgas_font_cfgas_fontmgr.cpp b/www/chromium/files/patch-third__party_pdfium_xfa_fgas_font_cfgas_fontmgr.cpp
index 7ae4e60e919e..f88a0a40e727 100644
--- a/www/chromium/files/patch-third__party_pdfium_xfa_fgas_font_cfgas_fontmgr.cpp
+++ b/www/chromium/files/patch-third__party_pdfium_xfa_fgas_font_cfgas_fontmgr.cpp
@@ -1,13 +1,13 @@
---- third_party/pdfium/xfa/fgas/font/cfgas_fontmgr.cpp.orig 2017-09-10 01:31:56.349532000 +0200
-+++ third_party/pdfium/xfa/fgas/font/cfgas_fontmgr.cpp 2017-09-10 01:33:41.025478000 +0200
-@@ -445,8 +445,8 @@
+--- third_party/pdfium/xfa/fgas/font/cfgas_fontmgr.cpp.orig 2017-12-15 02:05:39.000000000 +0100
++++ third_party/pdfium/xfa/fgas/font/cfgas_fontmgr.cpp 2017-12-24 19:04:05.574318000 +0100
+@@ -436,8 +436,8 @@
- const char* g_FontFolders[] = {
- #if _FXM_PLATFORM_ == _FXM_PLATFORM_LINUX_
+ constexpr const char* g_FontFolders[] = {
+ #if _FX_PLATFORM_ == _FX_PLATFORM_LINUX_
- "/usr/share/fonts", "/usr/share/X11/fonts/Type1",
- "/usr/share/X11/fonts/TTF", "/usr/local/share/fonts",
+ "/usr/local/share/fonts/Type1",
+ "/usr/local/share/fonts/TTF", "/usr/local/share/fonts",
- #elif _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_
+ #elif _FX_PLATFORM_ == _FX_PLATFORM_APPLE_
"~/Library/Fonts", "/Library/Fonts", "/System/Library/Fonts",
- #elif _FXM_PLATFORM_ == _FXM_PLATFORM_ANDROID_
+ #elif _FX_PLATFORM_ == _FX_PLATFORM_ANDROID_
diff --git a/www/chromium/files/patch-third__party_skia_src_images_SkJpegEncoder.cpp b/www/chromium/files/patch-third__party_skia_src_images_SkJpegEncoder.cpp
new file mode 100644
index 000000000000..af8600ec5449
--- /dev/null
+++ b/www/chromium/files/patch-third__party_skia_src_images_SkJpegEncoder.cpp
@@ -0,0 +1,41 @@
+--- third_party/skia/src/images/SkJpegEncoder.cpp.orig 2017-12-28 17:28:55.164840000 +0100
++++ third_party/skia/src/images/SkJpegEncoder.cpp 2017-12-28 17:34:22.821694000 +0100
+@@ -86,9 +86,14 @@
+ }
+ };
+
++#ifdef JCS_EXTENSIONS
+ J_COLOR_SPACE jpegColorType = JCS_EXT_RGBA;
++#else
++ J_COLOR_SPACE jpegColorType = JCS_RGB;
++#endif
+ int numComponents = 0;
+ switch (srcInfo.colorType()) {
++#ifdef JCS_EXTENSIONS
+ case kRGBA_8888_SkColorType:
+ fProc = chooseProc8888();
+ jpegColorType = JCS_EXT_RGBA;
+@@ -99,6 +104,7 @@
+ jpegColorType = JCS_EXT_BGRA;
+ numComponents = 4;
+ break;
++#endif
+ case kRGB_565_SkColorType:
+ fProc = transform_scanline_565;
+ jpegColorType = JCS_RGB;
+@@ -118,6 +124,7 @@
+ jpegColorType = JCS_GRAYSCALE;
+ numComponents = 1;
+ break;
++#ifdef JCS_EXTENSIONS
+ case kRGBA_F16_SkColorType:
+ if (!srcInfo.colorSpace() || !srcInfo.colorSpace()->gammaIsLinear() ||
+ SkTransferFunctionBehavior::kRespect != options.fBlendBehavior) {
+@@ -134,6 +141,7 @@
+ jpegColorType = JCS_EXT_RGBA;
+ numComponents = 4;
+ break;
++#endif
+ default:
+ return false;
+ }
diff --git a/www/chromium/files/patch-third__party_skia_src_sksl_SkSLString.h b/www/chromium/files/patch-third__party_skia_src_sksl_SkSLString.h
new file mode 100644
index 000000000000..c7344a6bb992
--- /dev/null
+++ b/www/chromium/files/patch-third__party_skia_src_sksl_SkSLString.h
@@ -0,0 +1,11 @@
+--- third_party/skia/src/sksl/SkSLString.h.orig 2017-12-24 19:10:48.599527000 +0100
++++ third_party/skia/src/sksl/SkSLString.h 2017-12-24 19:11:12.662001000 +0100
+@@ -22,6 +22,8 @@
+ #include "SkString.h"
+ #endif
+
++#include <stdarg.h>
++
+ namespace SkSL {
+
+ // Represents a (not necessarily null-terminated) slice of a string.
diff --git a/www/chromium/files/patch-third__party_sqlite_BUILD.gn b/www/chromium/files/patch-third__party_sqlite_BUILD.gn
index ca83cf293643..08045ec61410 100644
--- a/www/chromium/files/patch-third__party_sqlite_BUILD.gn
+++ b/www/chromium/files/patch-third__party_sqlite_BUILD.gn
@@ -1,15 +1,24 @@
---- third_party/sqlite/BUILD.gn.orig 2017-04-19 19:06:52 UTC
-+++ third_party/sqlite/BUILD.gn
-@@ -22,7 +22,7 @@ if (!use_system_sqlite) {
- # sqlite3Fts3InitTok).
- cflags += [ "-Wno-unused-function" ]
+--- third_party/sqlite/BUILD.gn.orig 2018-01-04 21:06:22.000000000 +0100
++++ third_party/sqlite/BUILD.gn 2018-02-03 11:16:06.346330000 +0100
+@@ -118,7 +118,7 @@
+ "USE_PREAD=1",
+ ]
}
+- if (is_linux || is_android) {
++ if ((is_linux && !is_bsd) || is_android) {
+ defines += [
+ # Linux provides fdatasync(), a faster equivalent of fsync().
+ "fdatasync=fdatasync",
+@@ -127,7 +127,7 @@
+
+ # Pull in config.h on Linux. This allows use of preprocessor macros which
+ # are not available to the build config.
- if (is_linux) {
-+ if (is_linux || is_bsd) {
- cflags += [
- # SQLite doesn"t believe in compiler warnings,
- # preferring testing.
-@@ -150,7 +150,7 @@ if (!use_system_sqlite) {
++ if (is_linux && !is_bsd) {
+ defines += [ "_HAVE_SQLITE_CONFIG_H" ]
+ }
+
+@@ -161,7 +161,7 @@
":sqlite_warnings",
]
@@ -18,30 +27,3 @@
libs = [ "dl" ]
} else if (is_mac || is_ios) {
libs = [
-@@ -187,7 +187,7 @@ if (!use_system_sqlite) {
- public_configs = [ ":sqlite_export" ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- executable("sqlite_shell") {
- # So shell.c can find the correct sqlite3.h.
- include_dirs = [ "amalgamation" ]
-@@ -216,7 +216,7 @@ if (use_system_sqlite) {
-
- config("sqlite_config") {
- defines = [ "USE_SYSTEM_SQLITE" ]
-- if (is_ios) {
-+ if (is_ios || is_bsd) {
- libs = [ "sqlite3" ]
- } else {
- assert(false, "extra flags to use system sqlite3 library missing")
-@@ -235,7 +235,7 @@ if (use_system_sqlite) {
- }
- }
-
-- if (is_ios) {
-+ if (is_ios || is_bsd) {
- source_set("sqlite_recover") {
- sources = [
- # TODO(shess): Move out of the SQLite source tree, perhaps to ext/.
diff --git a/www/chromium/files/patch-third__party_swiftshader_third_party_llvm-subzero_lib_Support_Unix_Process.inc b/www/chromium/files/patch-third__party_swiftshader_third_party_llvm-subzero_lib_Support_Unix_Process.inc
new file mode 100644
index 000000000000..c0bdc586f31b
--- /dev/null
+++ b/www/chromium/files/patch-third__party_swiftshader_third_party_llvm-subzero_lib_Support_Unix_Process.inc
@@ -0,0 +1,11 @@
+--- third_party/swiftshader/third_party/llvm-subzero/lib/Support/Unix/Process.inc.orig 2017-12-30 20:23:57.746690000 +0100
++++ third_party/swiftshader/third_party/llvm-subzero/lib/Support/Unix/Process.inc 2017-12-30 20:25:19.279850000 +0100
+@@ -35,7 +35,7 @@
+ // DragonFlyBSD, OpenBSD, and Bitrig have deprecated <malloc.h> for
+ // <stdlib.h> instead. Unix.h includes this for us already.
+ #if defined(HAVE_MALLOC_H) && !defined(__DragonFly__) && \
+- !defined(__OpenBSD__) && !defined(__Bitrig__)
++ !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__Bitrig__)
+ #include <malloc.h>
+ #endif
+ #if defined(HAVE_MALLCTL)
diff --git a/www/chromium/files/patch-third__party_usrsctp_BUILD.gn b/www/chromium/files/patch-third__party_usrsctp_BUILD.gn
index 813dff51f54b..d4d49ded4c00 100644
--- a/www/chromium/files/patch-third__party_usrsctp_BUILD.gn
+++ b/www/chromium/files/patch-third__party_usrsctp_BUILD.gn
@@ -1,11 +1,16 @@
---- third_party/usrsctp/BUILD.gn.orig 2017-04-19 19:06:53 UTC
-+++ third_party/usrsctp/BUILD.gn
-@@ -112,6 +112,12 @@ static_library("usrsctp") {
+--- third_party/usrsctp/BUILD.gn.orig 2017-12-15 02:04:50.000000000 +0100
++++ third_party/usrsctp/BUILD.gn 2018-01-03 13:28:10.295173000 +0100
+@@ -109,11 +109,16 @@
+ "-UINET6",
+ ]
+
+- if (is_linux || is_android) {
++ if ((is_linux && !is_bsd) || is_android ) {
+ defines += [
"__Userspace_os_Linux",
"_GNU_SOURCE",
]
+ } else if (is_bsd) {
-+ # For now, freebsd hard coding, differentiate different bsd is a plan
+ defines += [
+ "__Userspace_os_FreeBSD",
+ ]
diff --git a/www/chromium/files/patch-third__party_webrtc_BUILD.gn b/www/chromium/files/patch-third__party_webrtc_BUILD.gn
index 483e0d2b305f..8fb6fad4ac4a 100644
--- a/www/chromium/files/patch-third__party_webrtc_BUILD.gn
+++ b/www/chromium/files/patch-third__party_webrtc_BUILD.gn
@@ -1,11 +1,11 @@
---- third_party/webrtc/BUILD.gn.orig 2017-06-05 19:04:24 UTC
-+++ third_party/webrtc/BUILD.gn
-@@ -58,6 +58,9 @@ config("common_inherited_config") {
+--- third_party/webrtc/BUILD.gn.orig 2017-12-15 02:05:39.000000000 +0100
++++ third_party/webrtc/BUILD.gn 2017-12-24 19:21:52.441317000 +0100
+@@ -80,6 +80,9 @@
if (is_linux) {
defines += [ "WEBRTC_LINUX" ]
}
+ if (is_bsd) {
-+ defines += [ "WEBRTC_LINUX", "WEBRTC_BSD", "WEBRTC_THREAD_RR" ]
++ defines += [ "WEBRTC_BSD" ]
+ }
if (is_mac) {
defines += [ "WEBRTC_MAC" ]
diff --git a/www/chromium/files/patch-third__party_webrtc_modules_audio__device_BUILD.gn b/www/chromium/files/patch-third__party_webrtc_modules_audio__device_BUILD.gn
index f812a439327c..05758efac66b 100644
--- a/www/chromium/files/patch-third__party_webrtc_modules_audio__device_BUILD.gn
+++ b/www/chromium/files/patch-third__party_webrtc_modules_audio__device_BUILD.gn
@@ -1,20 +1,11 @@
---- third_party/webrtc/modules/audio_device/BUILD.gn.orig 2017-06-05 19:04:24 UTC
-+++ third_party/webrtc/modules/audio_device/BUILD.gn
-@@ -74,7 +74,7 @@ rtc_static_library("audio_device") {
- ]
-
- include_dirs = []
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- include_dirs += [ "linux" ]
- }
- if (is_ios) {
-@@ -124,7 +124,7 @@ rtc_static_library("audio_device") {
+--- third_party/webrtc/modules/audio_device/BUILD.gn.orig 2017-12-15 02:05:40.000000000 +0100
++++ third_party/webrtc/modules/audio_device/BUILD.gn 2017-12-30 03:44:43.126008000 +0100
+@@ -177,7 +177,7 @@
if (rtc_use_dummy_audio_file_devices) {
defines += [ "WEBRTC_DUMMY_FILE_DEVICES" ]
} else {
- if (is_linux) {
-+ if (is_linux || is_bsd) {
++ if (is_linux && !is_bsd) {
sources += [
"linux/alsasymboltable_linux.cc",
"linux/alsasymboltable_linux.h",
diff --git a/www/chromium/files/patch-third__party_webrtc_modules_video__coding_BUILD.gn b/www/chromium/files/patch-third__party_webrtc_modules_video__coding_BUILD.gn
deleted file mode 100644
index 33d5623395ee..000000000000
--- a/www/chromium/files/patch-third__party_webrtc_modules_video__coding_BUILD.gn
+++ /dev/null
@@ -1,29 +0,0 @@
---- third_party/webrtc/modules/video_coding/BUILD.gn.orig 2017-06-05 19:04:24 UTC
-+++ third_party/webrtc/modules/video_coding/BUILD.gn
-@@ -151,12 +151,7 @@ rtc_static_library("webrtc_h264") {
- }
-
- defines = []
-- deps = [
-- ":video_coding_utility",
-- "../../base:rtc_base_approved",
-- "../../media:rtc_media_base",
-- "../../system_wrappers",
-- ]
-+ deps = []
-
- if (rtc_use_h264) {
- defines += [ "WEBRTC_USE_H264" ]
-@@ -170,10 +165,10 @@ rtc_static_library("webrtc_h264") {
- "codecs/h264/h264_encoder_impl.h",
- ]
- deps += [
-- "../../common_video",
-- "../../media:rtc_media_base",
- "//third_party/ffmpeg:ffmpeg",
- "//third_party/openh264:encoder",
-+ "../../common_video",
-+ "../../media:rtc_media_base",
- ]
- }
- }
diff --git a/www/chromium/files/patch-third__party_webrtc_p2p_base_port.cc b/www/chromium/files/patch-third__party_webrtc_p2p_base_port.cc
new file mode 100644
index 000000000000..5856e97178eb
--- /dev/null
+++ b/www/chromium/files/patch-third__party_webrtc_p2p_base_port.cc
@@ -0,0 +1,11 @@
+--- third_party/webrtc/p2p/base/port.cc.orig 2017-12-30 23:29:20.335693000 +0100
++++ third_party/webrtc/p2p/base/port.cc 2017-12-30 23:29:34.422422000 +0100
+@@ -10,6 +10,8 @@
+
+ #include "p2p/base/port.h"
+
++#include <math.h>
++
+ #include <algorithm>
+ #include <vector>
+
diff --git a/www/chromium/files/patch-third__party_webrtc_rtc_base_BUILD.gn b/www/chromium/files/patch-third__party_webrtc_rtc_base_BUILD.gn
index b50037e74e34..f97dacf0dbdc 100644
--- a/www/chromium/files/patch-third__party_webrtc_rtc_base_BUILD.gn
+++ b/www/chromium/files/patch-third__party_webrtc_rtc_base_BUILD.gn
@@ -1,18 +1,20 @@
---- third_party/webrtc/rtc_base/BUILD.gn.orig 2017-09-07 00:32:08.540773000 +0200
-+++ third_party/webrtc/rtc_base/BUILD.gn 2017-09-07 00:32:40.555681000 +0200
-@@ -575,7 +575,6 @@
+--- third_party/webrtc/rtc_base/BUILD.gn.orig 2017-12-15 02:05:40.000000000 +0100
++++ third_party/webrtc/rtc_base/BUILD.gn 2017-12-24 19:35:21.721858000 +0100
+@@ -649,8 +649,6 @@
if (use_x11) {
libs += [
- "dl",
- "rt",
+- "rt",
"Xext",
"X11",
-@@ -586,7 +585,6 @@
+ "Xcomposite",
+@@ -658,7 +656,7 @@
+ ]
+ }
- if (is_linux) {
+- if (is_linux) {
++ if (is_linux && !is_bsd) {
libs += [
-- "dl",
+ "dl",
"rt",
- ]
- }
diff --git a/www/chromium/files/patch-third__party_webrtc_rtc_base_platform_thread.cc b/www/chromium/files/patch-third__party_webrtc_rtc_base_platform_thread.cc
index 9c9d358b1ba7..e7e9494949d3 100644
--- a/www/chromium/files/patch-third__party_webrtc_rtc_base_platform_thread.cc
+++ b/www/chromium/files/patch-third__party_webrtc_rtc_base_platform_thread.cc
@@ -1,42 +1,40 @@
---- third_party/webrtc/rtc_base/platform_thread.cc.orig 2017-09-07 01:16:42.622602000 +0200
-+++ third_party/webrtc/rtc_base/platform_thread.cc 2017-09-07 01:29:26.664318000 +0200
-@@ -15,11 +15,18 @@
- #include "webrtc/rtc_base/timeutils.h"
- #include "webrtc/rtc_base/trace_event.h"
+--- third_party/webrtc/rtc_base/platform_thread.cc.orig 2017-12-15 02:05:40.000000000 +0100
++++ third_party/webrtc/rtc_base/platform_thread.cc 2017-12-24 19:19:48.387841000 +0100
+@@ -16,7 +16,9 @@
+ #include "rtc_base/trace_event.h"
--#if defined(WEBRTC_LINUX)
-+#if defined(WEBRTC_LINUX) && !defined(__FreeBSD__)
+ #if defined(WEBRTC_LINUX)
++#if !defined(__FreeBSD__)
#include <sys/prctl.h>
++#endif
#include <sys/syscall.h>
#endif
-+#if defined(WEBRTC_BSD)
-+#include <pthread.h>
-+#include <pthread_np.h>
-+#include <sys/syscall.h>
-+#include <sys/thr.h>
-+#endif
-+
- namespace rtc {
-
- PlatformThreadId CurrentThreadId() {
-@@ -29,6 +36,8 @@
- #elif defined(WEBRTC_POSIX)
- #if defined(WEBRTC_MAC) || defined(WEBRTC_IOS)
+@@ -31,8 +33,10 @@
ret = pthread_mach_thread_np(pthread_self());
-+#elif defined(WEBRTC_BSD)
-+ ret = reinterpret_cast<int>(pthread_getthreadid_np());
- #elif defined(WEBRTC_LINUX)
- ret = syscall(__NR_gettid);
#elif defined(WEBRTC_ANDROID)
-@@ -72,7 +81,9 @@
- reinterpret_cast<ULONG_PTR*>(&threadname_info));
- } __except (EXCEPTION_EXECUTE_HANDLER) {
- }
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_ANDROID)
-+#elif defined(WEBRTC_BSD)
-+ pthread_set_name_np(pthread_self(), name);
-+#elif (defined(WEBRTC_LINUX) || defined(WEBRTC_ANDROID)) && !defined(WEBRTC_BSD)
+ ret = gettid();
+-#elif defined(WEBRTC_LINUX)
++#elif defined(WEBRTC_LINUX) && !defined(__FreeBSD__)
+ ret = syscall(__NR_gettid);
++#elif defined(__FreeBSD__)
++ ret = reinterpret_cast<uint64_t>(pthread_self());
+ #else
+ // Default implementation for nacl and solaris.
+ ret = reinterpret_cast<pid_t>(pthread_self());
+@@ -59,6 +63,7 @@
+ }
+
+ void SetCurrentThreadName(const char* name) {
++#if !defined(__FreeBSD__)
+ #if defined(WEBRTC_WIN)
+ struct {
+ DWORD dwType;
+@@ -76,6 +81,7 @@
prctl(PR_SET_NAME, reinterpret_cast<unsigned long>(name));
#elif defined(WEBRTC_MAC) || defined(WEBRTC_IOS)
pthread_setname_np(name);
++#endif
+ #endif
+ }
+
diff --git a/www/chromium/files/patch-third__party_webrtc_system__wrappers_BUILD.gn b/www/chromium/files/patch-third__party_webrtc_system__wrappers_BUILD.gn
index 37df2d3d8b7f..b8f49e406ff0 100644
--- a/www/chromium/files/patch-third__party_webrtc_system__wrappers_BUILD.gn
+++ b/www/chromium/files/patch-third__party_webrtc_system__wrappers_BUILD.gn
@@ -1,20 +1,11 @@
---- third_party/webrtc/system_wrappers/BUILD.gn.orig 2017-06-05 19:04:24 UTC
-+++ third_party/webrtc/system_wrappers/BUILD.gn
-@@ -79,7 +79,7 @@ rtc_static_library("system_wrappers") {
- libs += [ "log" ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- defines += [ "WEBRTC_THREAD_RR" ]
-
+--- third_party/webrtc/system_wrappers/BUILD.gn.orig 2017-12-15 02:05:40.000000000 +0100
++++ third_party/webrtc/system_wrappers/BUILD.gn 2017-12-24 19:38:19.942270000 +0100
+@@ -72,8 +72,6 @@
if (!build_with_chromium) {
-@@ -89,7 +89,7 @@ rtc_static_library("system_wrappers") {
- libs += [ "rt" ]
- }
-
-- if (is_linux || is_android) {
-+ if (is_linux || is_android || is_bsd) {
- sources += [ "source/atomic32_non_darwin_unix.cc" ]
+ deps += [ ":cpu_features_linux" ]
+ }
+-
+- libs += [ "rt" ]
}
+ if (is_linux || is_android) {
diff --git a/www/chromium/files/patch-third__party_webrtc_system__wrappers_source_timestamp_extrapolator.cc b/www/chromium/files/patch-third__party_webrtc_system__wrappers_source_timestamp_extrapolator.cc
new file mode 100644
index 000000000000..22a69d0271a3
--- /dev/null
+++ b/www/chromium/files/patch-third__party_webrtc_system__wrappers_source_timestamp_extrapolator.cc
@@ -0,0 +1,11 @@
+--- third_party/webrtc/system_wrappers/source/timestamp_extrapolator.cc.orig 2017-12-24 19:40:16.381935000 +0100
++++ third_party/webrtc/system_wrappers/source/timestamp_extrapolator.cc 2017-12-24 19:40:27.636036000 +0100
+@@ -12,6 +12,8 @@
+
+ #include <algorithm>
+
++#undef _P
++
+ namespace webrtc {
+
+ TimestampExtrapolator::TimestampExtrapolator(int64_t start_ms)
diff --git a/www/chromium/files/patch-third__party_webrtc_webrtc.gni b/www/chromium/files/patch-third__party_webrtc_webrtc.gni
new file mode 100644
index 000000000000..eb5260fc2bef
--- /dev/null
+++ b/www/chromium/files/patch-third__party_webrtc_webrtc.gni
@@ -0,0 +1,11 @@
+--- third_party/webrtc/webrtc.gni.orig 2017-12-24 19:22:37.091592000 +0100
++++ third_party/webrtc/webrtc.gni 2017-12-24 19:23:04.024283000 +0100
+@@ -199,7 +199,7 @@
+ rtc_opus_dir = "//third_party/opus"
+
+ # Desktop capturer is supported only on Windows, OSX and Linux.
+-rtc_desktop_capture_supported = is_win || is_mac || (is_linux && use_x11)
++rtc_desktop_capture_supported = is_win || is_mac || ((is_linux && use_x11) && !is_bsd)
+
+ ###############################################################################
+ # Templates
diff --git a/www/chromium/files/patch-third__party_widevine_cdm_BUILD.gn b/www/chromium/files/patch-third__party_widevine_cdm_BUILD.gn
deleted file mode 100644
index 8bbde89793cd..000000000000
--- a/www/chromium/files/patch-third__party_widevine_cdm_BUILD.gn
+++ /dev/null
@@ -1,29 +0,0 @@
---- third_party/widevine/cdm/BUILD.gn.orig 2017-07-25 21:05:18.000000000 +0200
-+++ third_party/widevine/cdm/BUILD.gn 2017-08-02 16:23:19.012976000 +0200
-@@ -26,7 +26,7 @@
- widevine_cdm_version_h_file =
- "chromeos/$widevine_arch/widevine_cdm_version.h"
- widevine_cdm_binary_files = [ "chromeos/$widevine_arch/libwidevinecdm.so" ]
-- } else if (is_linux) {
-+ } else if (is_linux || is_bsd) {
- widevine_cdm_version_h_file = "linux/$widevine_arch/widevine_cdm_version.h"
- widevine_cdm_binary_files = [ "linux/$widevine_arch/libwidevinecdm.so" ]
- } else if (is_win) {
-@@ -165,7 +165,7 @@
- ":widevinecdm",
- ]
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- ldflags =
- [ rebase_path("$root_out_dir/$widevine_cdm_path/libwidevinecdm.so",
- root_build_dir) ]
-@@ -188,7 +188,7 @@
- # This target exists for tests to depend on that pulls in a runtime dependency
- # on the license server.
- source_set("widevine_test_license_server") {
-- if (is_chrome_branded && is_linux) {
-+ if (is_chrome_branded && (is_linux || is_bsd)) {
- deps = [
- # TODO(jrummell)
- # This target should be removed and targets should have data_deps on this target:
diff --git a/www/chromium/files/patch-third__party_yasm_BUILD.gn b/www/chromium/files/patch-third__party_yasm_BUILD.gn
index 662fb72089f2..4a4b810d4b41 100644
--- a/www/chromium/files/patch-third__party_yasm_BUILD.gn
+++ b/www/chromium/files/patch-third__party_yasm_BUILD.gn
@@ -1,11 +1,11 @@
---- third_party/yasm/BUILD.gn.orig 2017-06-05 19:03:29 UTC
-+++ third_party/yasm/BUILD.gn
-@@ -32,7 +32,12 @@ import("//build/config/compiler/compiler.gni")
- if (current_toolchain == host_toolchain) {
- # Various files referenced by multiple targets.
- yasm_gen_include_dir = "$target_gen_dir/include"
-- config_makefile = "source/config/$host_os/Makefile"
-+ # HACK for All BSD derivatives use openbsd include directory
+--- third_party/yasm/BUILD.gn.orig 2017-12-15 02:04:50.000000000 +0100
++++ third_party/yasm/BUILD.gn 2017-12-24 19:31:25.638531000 +0100
+@@ -60,7 +60,12 @@
+ # x86insn_nasm.c. These files were previously generated during the build but
+ # are now shipped pre-generated by yasm.
+ yasm_gen_include_dir = "$target_gen_dir/gen_include"
+- config_makefile = "source/config/Makefile"
++ # Hack for all BSD derivatives use OpenBSD include directory
+ if (is_bsd) {
+ config_makefile = "source/config/openbsd/Makefile"
+ } else {
diff --git a/www/chromium/files/patch-tools_battor__agent_BUILD.gn b/www/chromium/files/patch-tools_battor__agent_BUILD.gn
deleted file mode 100644
index 80c12b6d9a60..000000000000
--- a/www/chromium/files/patch-tools_battor__agent_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- tools/battor_agent/BUILD.gn.orig 2017-04-19 19:06:54 UTC
-+++ tools/battor_agent/BUILD.gn
-@@ -5,7 +5,7 @@
- import("//testing/test.gni")
-
- # Works only on desktop platforms.
--assert(is_win || is_linux || is_mac)
-+assert(is_win || is_linux || is_bsd || is_mac)
-
- executable("battor_agent") {
- sources = [
diff --git a/www/chromium/files/patch-tools_json_schema_compiler_feature_compiler.py b/www/chromium/files/patch-tools_json_schema_compiler_feature_compiler.py
new file mode 100644
index 000000000000..3e39ba415bae
--- /dev/null
+++ b/www/chromium/files/patch-tools_json_schema_compiler_feature_compiler.py
@@ -0,0 +1,10 @@
+--- tools/json_schema_compiler/feature_compiler.py.orig 2017-12-30 06:35:45.162972000 +0100
++++ tools/json_schema_compiler/feature_compiler.py 2017-12-30 06:37:35.101873000 +0100
+@@ -211,6 +211,7 @@
+ 'enum_map': {
+ 'chromeos': 'Feature::CHROMEOS_PLATFORM',
+ 'linux': 'Feature::LINUX_PLATFORM',
++ 'bsd': 'Feature::LINUX_PLATFORM',
+ 'mac': 'Feature::MACOSX_PLATFORM',
+ 'win': 'Feature::WIN_PLATFORM',
+ }
diff --git a/www/chromium/files/patch-tools_json_schema_compiler_model.py b/www/chromium/files/patch-tools_json_schema_compiler_model.py
new file mode 100644
index 000000000000..703f5ca13dac
--- /dev/null
+++ b/www/chromium/files/patch-tools_json_schema_compiler_model.py
@@ -0,0 +1,11 @@
+--- tools/json_schema_compiler/model.py.orig 2017-12-30 06:35:55.601371000 +0100
++++ tools/json_schema_compiler/model.py 2017-12-30 06:36:37.374966000 +0100
+@@ -599,7 +599,7 @@
+ """
+ CHROMEOS = _PlatformInfo("chromeos")
+ CHROMEOS_TOUCH = _PlatformInfo("chromeos_touch")
+- LINUX = _PlatformInfo("linux")
++ LINUX = _PlatformInfo("bsd")
+ MAC = _PlatformInfo("mac")
+ WIN = _PlatformInfo("win")
+
diff --git a/www/chromium/files/patch-tools_perf_chrome__telemetry__build_BUILD.gn b/www/chromium/files/patch-tools_perf_chrome__telemetry__build_BUILD.gn
index 95acbd0fb5ef..e5477c629d5e 100644
--- a/www/chromium/files/patch-tools_perf_chrome__telemetry__build_BUILD.gn
+++ b/www/chromium/files/patch-tools_perf_chrome__telemetry__build_BUILD.gn
@@ -1,11 +1,11 @@
---- tools/perf/chrome_telemetry_build/BUILD.gn.orig 2017-06-05 19:03:30 UTC
-+++ tools/perf/chrome_telemetry_build/BUILD.gn
-@@ -29,7 +29,7 @@ group("telemetry_chrome_test") {
+--- tools/perf/chrome_telemetry_build/BUILD.gn.orig 2017-12-15 02:04:51.000000000 +0100
++++ tools/perf/chrome_telemetry_build/BUILD.gn 2017-12-24 19:48:41.050737000 +0100
+@@ -37,7 +37,7 @@
data_deps += [ "//chrome:reorder_imports" ]
}
- if (is_linux) {
+ if (is_linux && !is_bsd) {
- data_deps += [ "//breakpad:dump_syms($host_toolchain)" ]
+ data_deps += [ "//third_party/breakpad:dump_syms($host_toolchain)" ]
}
diff --git a/www/chromium/files/patch-tools_variations_fieldtrial__to__struct.py b/www/chromium/files/patch-tools_variations_fieldtrial__to__struct.py
index 2385c7f73d0f..0e683a15c671 100644
--- a/www/chromium/files/patch-tools_variations_fieldtrial__to__struct.py
+++ b/www/chromium/files/patch-tools_variations_fieldtrial__to__struct.py
@@ -1,11 +1,11 @@
---- tools/variations/fieldtrial_to_struct.py.orig 2017-04-19 19:06:54 UTC
-+++ tools/variations/fieldtrial_to_struct.py
-@@ -116,7 +116,7 @@ def main(arguments):
- if not opts.platform:
+--- tools/variations/fieldtrial_to_struct.py.orig 2017-12-15 02:04:51.000000000 +0100
++++ tools/variations/fieldtrial_to_struct.py 2017-12-24 19:54:09.044002000 +0100
+@@ -117,7 +117,7 @@
parser.error('You must specify a --platform.')
-- supported_platforms = ['android', 'chromeos', 'ios', 'linux', 'mac', 'win']
-+ supported_platforms = ['android', 'chromeos', 'ios', 'linux', 'mac', 'win', 'bsd']
+ supported_platforms = ['android', 'chromeos', 'fuchsia', 'ios', 'linux',
+- 'mac', 'win']
++ 'mac', 'win', 'bsd']
if opts.platform not in supported_platforms:
parser.error('\'%s\' is an unknown platform. Supported platforms: %s' %
(opts.platform, supported_platforms))
diff --git a/www/chromium/files/patch-ui_aura_BUILD.gn b/www/chromium/files/patch-ui_aura_BUILD.gn
deleted file mode 100644
index 8933452455a2..000000000000
--- a/www/chromium/files/patch-ui_aura_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- ui/aura/BUILD.gn.orig 2017-06-05 19:03:30 UTC
-+++ ui/aura/BUILD.gn
-@@ -375,7 +375,7 @@ test("aura_unittests") {
- "//ui/gl:test_support",
- ]
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- deps += [ "//third_party/mesa" ]
- }
-
diff --git a/www/chromium/files/patch-ui_base_BUILD.gn b/www/chromium/files/patch-ui_base_BUILD.gn
deleted file mode 100644
index 8af223c9b9d5..000000000000
--- a/www/chromium/files/patch-ui_base_BUILD.gn
+++ /dev/null
@@ -1,67 +0,0 @@
---- ui/base/BUILD.gn.orig 2017-09-05 21:05:48.000000000 +0200
-+++ ui/base/BUILD.gn 2017-09-08 14:20:33.060901000 +0200
-@@ -369,7 +369,7 @@
- sources += [ "touch/touch_device_android.cc" ]
- } else if (is_ios) {
- sources += [ "touch/touch_device_ios.cc" ]
-- } else if (is_linux) {
-+ } else if (is_linux || is_bsd) {
- sources += [ "touch/touch_device_linux.cc" ]
- } else {
- # Empty implementation for all other cases.
-@@ -377,6 +377,10 @@
- sources -= [ "touch/touch_device_util.cc" ]
- }
-
-+ if (is_bsd) {
-+ sources += [ "resource/resource_bundle_freebsd.cc" ]
-+ }
-+
- if (is_fuchsia) {
- sources += [
- "clipboard/clipboard_fuchsia.cc",
-@@ -492,7 +496,7 @@
- sources -= [ "resource/resource_bundle_auralinux.cc" ]
- }
-
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- deps += [ "//third_party/fontconfig" ]
- }
-
-@@ -510,7 +514,7 @@
- sources -= [ "idle/idle_linux.cc" ]
- }
-
-- if (is_chromeos || (use_aura && ((is_linux && !use_x11) || is_android))) {
-+ if (is_chromeos || (use_aura && (((is_linux || is_bsd) && !use_x11) || is_android))) {
- sources += [
- "dragdrop/os_exchange_data_provider_aura.cc",
- "dragdrop/os_exchange_data_provider_aura.h",
-@@ -862,7 +866,7 @@
- "ime/win/imm32_manager_unittest.cc",
- "ime/win/tsf_input_scope_unittest.cc",
- ]
-- if (is_linux && use_aura && !is_chromeos) {
-+ if ((is_linux || is_bsd) && use_aura && !is_chromeos) {
- sources += [ "ime/input_method_auralinux_unittest.cc" ]
- }
- if (use_x11) {
-@@ -985,7 +989,7 @@
- ]
- }
-
-- if (is_android || is_linux || is_mac || is_win || is_fuchsia) {
-+ if (is_android || is_linux || is_bsd || is_mac || is_win || is_fuchsia) {
- # TODO(brettw): We should be able to depend on //ui/resources:ui_test_pak
- # instead of depending directly on the non-test .pak files, but depending
- # on ui_test_pak seems to have no effect.
-@@ -998,7 +1002,7 @@
- "//third_party/mesa:osmesa",
- ]
- }
-- if (is_linux || is_win || is_fuchsia) {
-+ if (is_linux || is_bsd || is_win || is_fuchsia) {
- data += [
- # TODO(brettw): Remove these two lines.
- "$root_out_dir/ui/en-US.pak",
diff --git a/www/chromium/files/patch-ui_base_ime_BUILD.gn b/www/chromium/files/patch-ui_base_ime_BUILD.gn
deleted file mode 100644
index f18610b808a3..000000000000
--- a/www/chromium/files/patch-ui_base_ime_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- ui/base/ime/BUILD.gn.orig 2017-04-19 19:06:54 UTC
-+++ ui/base/ime/BUILD.gn
-@@ -124,7 +124,7 @@ component("ime") {
- "//skia",
- ]
-
-- if (!use_aura || (!is_linux && !use_ozone)) {
-+ if (!use_aura || (!(is_linux || is_bsd) && !use_ozone)) {
- sources -= [
- "input_method_auralinux.cc",
- "input_method_auralinux.h",
-@@ -138,7 +138,7 @@ component("ime") {
- ]
- }
-
-- if (!is_chromeos && is_linux) {
-+ if (!is_chromeos && (is_linux || is_bsd)) {
- sources += [
- "linux/text_edit_command_auralinux.cc",
- "linux/text_edit_command_auralinux.h",
diff --git a/www/chromium/files/patch-ui_base_resource_resource__bundle.cc b/www/chromium/files/patch-ui_base_resource_resource__bundle.cc
index e5c320eaecec..251276eb0e9c 100644
--- a/www/chromium/files/patch-ui_base_resource_resource__bundle.cc
+++ b/www/chromium/files/patch-ui_base_resource_resource__bundle.cc
@@ -1,20 +1,20 @@
---- ui/base/resource/resource_bundle.cc.orig 2017-06-05 19:03:30 UTC
-+++ ui/base/resource/resource_bundle.cc
-@@ -676,7 +676,7 @@ void ResourceBundle::ReloadFonts() {
+--- ui/base/resource/resource_bundle.cc.orig 2017-12-15 02:04:51.000000000 +0100
++++ ui/base/resource/resource_bundle.cc 2017-12-24 20:04:48.415881000 +0100
+@@ -707,7 +707,7 @@
}
ScaleFactor ResourceBundle::GetMaxScaleFactor() const {
--#if defined(OS_CHROMEOS) || defined(OS_WIN) || defined(OS_LINUX)
-+#if defined(OS_CHROMEOS) || defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD)
+-#if defined(OS_WIN) || defined(OS_LINUX)
++#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD)
return max_scale_factor_;
#else
return GetSupportedScaleFactors().back();
-@@ -734,7 +734,7 @@ void ResourceBundle::InitSharedInstance(Delegate* dele
+@@ -762,7 +762,7 @@
+ } else {
supported_scale_factors.push_back(SCALE_FACTOR_100P);
}
- #elif defined(OS_MACOSX) || defined(OS_CHROMEOS) || defined(OS_LINUX) || \
-- defined(OS_WIN)
-+ defined(OS_WIN) || defined(OS_BSD)
+-#elif defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_WIN)
++#elif defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD)
supported_scale_factors.push_back(SCALE_FACTOR_200P);
#endif
ui::SetSupportedScaleFactors(supported_scale_factors);
diff --git a/www/chromium/files/patch-ui_base_ui__features.gni b/www/chromium/files/patch-ui_base_ui__features.gni
deleted file mode 100644
index 108b66246bf1..000000000000
--- a/www/chromium/files/patch-ui_base_ui__features.gni
+++ /dev/null
@@ -1,8 +0,0 @@
---- ui/base/ui_features.gni.orig 2017-06-05 19:03:30 UTC
-+++ ui/base/ui_features.gni
-@@ -15,4 +15,4 @@ declare_args() {
- has_native_accessibility = use_atk || is_win || is_mac
- }
-
--enable_hidpi = is_mac || is_win || is_linux
-+enable_hidpi = is_mac || is_win || is_linux || is_bsd
diff --git a/www/chromium/files/patch-ui_compositor_BUILD.gn b/www/chromium/files/patch-ui_compositor_BUILD.gn
deleted file mode 100644
index 262440a27e71..000000000000
--- a/www/chromium/files/patch-ui_compositor_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- ui/compositor/BUILD.gn.orig 2017-06-05 19:03:30 UTC
-+++ ui/compositor/BUILD.gn
-@@ -214,7 +214,7 @@ test("compositor_unittests") {
- "//ui/gl",
- "//ui/resources",
- ]
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- deps += [ "//third_party/mesa:osmesa" ]
- }
- }
diff --git a/www/chromium/files/patch-ui_gfx_codec_jpeg_codec.cc b/www/chromium/files/patch-ui_gfx_codec_jpeg_codec.cc
new file mode 100644
index 000000000000..052cd8349b0e
--- /dev/null
+++ b/www/chromium/files/patch-ui_gfx_codec_jpeg_codec.cc
@@ -0,0 +1,20 @@
+--- ui/gfx/codec/jpeg_codec.cc.orig 2017-10-14 03:14:08.077073000 +0200
++++ ui/gfx/codec/jpeg_codec.cc 2017-10-14 03:25:59.561802000 +0200
+@@ -219,6 +219,7 @@
+ case JCS_GRAYSCALE:
+ case JCS_RGB:
+ case JCS_YCbCr:
++#ifdef JCS_EXTENSIONS
+ // Choose an output colorspace and return if it is an unsupported one.
+ // Same as JPEGCodec::Encode(), libjpeg-turbo supports all input formats
+ // used by Chromium (i.e. RGBA and BGRA) and we just map the input
+@@ -237,6 +238,9 @@
+ NOTREACHED() << "Invalid pixel format";
+ return false;
+ }
++#else
++ cinfo.out_color_space = JCS_RGB;
++#endif
+ break;
+ case JCS_CMYK:
+ case JCS_YCCK:
diff --git a/www/chromium/files/patch-ui_gfx_font__list.cc b/www/chromium/files/patch-ui_gfx_font__list.cc
index c9e4f9152b4f..b559de3d3c6a 100644
--- a/www/chromium/files/patch-ui_gfx_font__list.cc
+++ b/www/chromium/files/patch-ui_gfx_font__list.cc
@@ -1,11 +1,11 @@
---- ui/gfx/font_list.cc.orig 2017-06-05 19:03:30 UTC
-+++ ui/gfx/font_list.cc
-@@ -24,7 +24,7 @@ base::LazyInstance<scoped_refptr<gfx::FontListImpl>>::
+--- ui/gfx/font_list.cc.orig 2017-12-15 02:04:51.000000000 +0100
++++ ui/gfx/font_list.cc 2017-12-24 20:09:47.066057000 +0100
+@@ -24,7 +24,7 @@
bool g_default_impl_initialized = false;
bool IsFontFamilyAvailable(const std::string& family, SkFontMgr* fontManager) {
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- sk_sp<SkTypeface> typeface(
- fontManager->legacyCreateTypeface(family.c_str(), SkFontStyle()));
- return typeface;
+ return fontManager->legacyMakeTypeface(family.c_str(), SkFontStyle());
+ #else
+ sk_sp<SkFontStyleSet> set(fontManager->matchFamily(family.c_str()));
diff --git a/www/chromium/files/patch-ui_gfx_font__render__params.h b/www/chromium/files/patch-ui_gfx_font__render__params.h
index c59e2c5b9256..999ecf6af423 100644
--- a/www/chromium/files/patch-ui_gfx_font__render__params.h
+++ b/www/chromium/files/patch-ui_gfx_font__render__params.h
@@ -1,6 +1,6 @@
---- ui/gfx/font_render_params.h.orig 2017-07-25 21:05:19.000000000 +0200
-+++ ui/gfx/font_render_params.h 2017-08-02 16:44:10.216212000 +0200
-@@ -107,14 +107,14 @@
+--- ui/gfx/font_render_params.h.orig 2017-12-15 02:04:51.000000000 +0100
++++ ui/gfx/font_render_params.h 2017-12-24 20:14:06.436950000 +0100
+@@ -107,13 +107,13 @@
const FontRenderParamsQuery& query,
std::string* family_out);
@@ -11,9 +11,8 @@
GFX_EXPORT void ClearFontRenderParamsCacheForTest();
#endif
- #if defined(OS_CHROMEOS) || defined(OS_LINUX) || \
-- (defined(OS_ANDROID) && BUILDFLAG(ENABLE_VR))
-+ (defined(OS_ANDROID) && BUILDFLAG(ENABLE_VR)) || defined(OS_BSD)
+-#if defined(OS_LINUX) || (defined(OS_ANDROID) && BUILDFLAG(ENABLE_VR))
++#if defined(OS_LINUX) || defined(OS_BSD) || (defined(OS_ANDROID) && BUILDFLAG(ENABLE_VR))
// Gets the device scale factor to query the FontRenderParams.
GFX_EXPORT float GetFontRenderParamsDeviceScaleFactor();
diff --git a/www/chromium/files/patch-ui_gfx_mojo_buffer_types_struct_traits.cc b/www/chromium/files/patch-ui_gfx_mojo_buffer_types_struct_traits.cc
index 36a07617d0a2..f807cbc71ebc 100644
--- a/www/chromium/files/patch-ui_gfx_mojo_buffer_types_struct_traits.cc
+++ b/www/chromium/files/patch-ui_gfx_mojo_buffer_types_struct_traits.cc
@@ -1,19 +1,19 @@
---- ui/gfx/mojo/buffer_types_struct_traits.cc.orig 2017-09-05 21:05:48.000000000 +0200
-+++ ui/gfx/mojo/buffer_types_struct_traits.cc 2017-09-07 01:52:13.480533000 +0200
+--- ui/gfx/mojo/buffer_types_struct_traits.cc.orig 2017-12-15 02:04:51.000000000 +0100
++++ ui/gfx/mojo/buffer_types_struct_traits.cc 2017-12-24 20:18:51.935594000 +0100
@@ -12,10 +12,10 @@
- gfx::NativePixmapHandle>::
- SetUpContext(const gfx::NativePixmapHandle& pixmap_handle) {
- auto* handles = new std::vector<mojo::ScopedHandle>();
+ StructTraits<gfx::mojom::NativePixmapHandleDataView, gfx::NativePixmapHandle>::
+ fds(const gfx::NativePixmapHandle& pixmap_handle) {
+ std::vector<mojo::ScopedHandle> handles;
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
for (const base::FileDescriptor& fd : pixmap_handle.fds)
- handles->emplace_back(mojo::WrapPlatformFile(fd.fd));
+ handles.emplace_back(mojo::WrapPlatformFile(fd.fd));
-#endif // defined(OS_LINUX)
+#endif // defined(OS_LINUX) || defined(OS_BSD)
return handles;
}
-@@ -36,7 +36,7 @@
+@@ -23,7 +23,7 @@
gfx::mojom::NativePixmapHandleDataView,
gfx::NativePixmapHandle>::Read(gfx::mojom::NativePixmapHandleDataView data,
gfx::NativePixmapHandle* out) {
@@ -22,7 +22,7 @@
mojo::ArrayDataView<mojo::ScopedHandle> handles_data_view;
data.GetFdsDataView(&handles_data_view);
for (size_t i = 0; i < handles_data_view.size(); ++i) {
-@@ -68,7 +68,7 @@
+@@ -55,7 +55,7 @@
StructTraits<gfx::mojom::GpuMemoryBufferHandleDataView,
gfx::GpuMemoryBufferHandle>::
native_pixmap_handle(const gfx::GpuMemoryBufferHandle& handle) {
@@ -31,7 +31,7 @@
return handle.native_pixmap_handle;
#else
static gfx::NativePixmapHandle pixmap_handle;
-@@ -107,7 +107,7 @@
+@@ -94,7 +94,7 @@
out->offset = data.offset();
out->stride = data.stride();
}
diff --git a/www/chromium/files/patch-ui_gl_BUILD.gn b/www/chromium/files/patch-ui_gl_BUILD.gn
index 05f72aeb5f9e..9ad258c4f7f2 100644
--- a/www/chromium/files/patch-ui_gl_BUILD.gn
+++ b/www/chromium/files/patch-ui_gl_BUILD.gn
@@ -1,28 +1,21 @@
---- ui/gl/BUILD.gn.orig 2017-09-05 21:05:48.000000000 +0200
-+++ ui/gl/BUILD.gn 2017-09-07 01:56:19.612744000 +0200
-@@ -15,7 +15,7 @@
- (target_cpu == "x86" || target_cpu == "x64")
- }
-
--use_egl = is_win || is_android || is_linux || is_fuchsia
-+use_egl = is_win || is_android || is_linux || is_fuchsia || is_bsd
- use_glx = use_x11 || ozone_platform_x11
-
- if (is_android) {
-@@ -181,14 +181,14 @@
- "gl_surface_egl.h",
+--- ui/gl/BUILD.gn.orig 2017-12-30 03:59:07.267974000 +0100
++++ ui/gl/BUILD.gn 2017-12-30 03:59:58.156283000 +0100
+@@ -261,7 +261,6 @@
+ data_deps += [
+ "//third_party/angle:libEGL",
+ "//third_party/angle:libGLESv2",
+- "//third_party/mesa:osmesa",
+ "//third_party/swiftshader",
]
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "gl_image_native_pixmap.cc",
- "gl_image_native_pixmap.h",
- ]
- }
- }
-- if (is_android || is_linux) {
-+ if (is_android || is_linux || is_bsd) {
- sources += [
- "gl_implementation_osmesa.cc",
- "gl_implementation_osmesa.h",
+@@ -434,10 +433,6 @@
+ "//ui/gl/init",
+ "//ui/platform_window",
+ "//ui/platform_window:platform_impls",
+- ]
+-
+- data_deps = [
+- "//third_party/mesa:osmesa",
+ ]
+ }
+
diff --git a/www/chromium/files/patch-ui_gl_gl_bindings_api_autogen_glx.h b/www/chromium/files/patch-ui_gl_gl_bindings_api_autogen_glx.h
new file mode 100644
index 000000000000..34f2a8164a20
--- /dev/null
+++ b/www/chromium/files/patch-ui_gl_gl_bindings_api_autogen_glx.h
@@ -0,0 +1,10 @@
+--- ui/gl/gl_bindings_api_autogen_glx.h.orig 2017-12-30 16:59:26.294402000 +0100
++++ ui/gl/gl_bindings_api_autogen_glx.h 2017-12-30 17:01:57.250690000 +0100
+@@ -84,6 +84,7 @@
+ GLXDrawable drawable,
+ int32_t* numerator,
+ int32_t* denominator) override;
++__GLXextFuncPtr glXGetProcAddressARBFn(const GLubyte* procName) override;
+ void glXGetSelectedEventFn(Display* dpy,
+ GLXDrawable drawable,
+ unsigned long* mask) override;
diff --git a/www/chromium/files/patch-ui_gl_gl_bindings_autogen_glx.cc b/www/chromium/files/patch-ui_gl_gl_bindings_autogen_glx.cc
new file mode 100644
index 000000000000..64b47ac8e463
--- /dev/null
+++ b/www/chromium/files/patch-ui_gl_gl_bindings_autogen_glx.cc
@@ -0,0 +1,69 @@
+--- ui/gl/gl_bindings_autogen_glx.cc.orig 2017-12-15 02:04:52.000000000 +0100
++++ ui/gl/gl_bindings_autogen_glx.cc 2017-12-30 20:41:29.231707000 +0100
+@@ -73,6 +73,7 @@
+ fn.glXGetFBConfigsFn = reinterpret_cast<glXGetFBConfigsProc>(
+ GetGLProcAddress("glXGetFBConfigs"));
+ fn.glXGetMscRateOMLFn = 0;
++ fn.glXGetProcAddressARBFn = 0;
+ fn.glXGetSelectedEventFn = reinterpret_cast<glXGetSelectedEventProc>(
+ GetGLProcAddress("glXGetSelectedEvent"));
+ fn.glXGetSyncValuesOMLFn = 0;
+@@ -120,6 +121,8 @@
+
+ ext.b_GLX_ARB_create_context =
+ HasExtension(extensions, "GLX_ARB_create_context");
++ ext.b_GLX_ARB_get_proc_address =
++ HasExtension(extensions, "GLX_ARB_get_proc_address");
+ ext.b_GLX_EXT_swap_control = HasExtension(extensions, "GLX_EXT_swap_control");
+ ext.b_GLX_EXT_texture_from_pixmap =
+ HasExtension(extensions, "GLX_EXT_texture_from_pixmap");
+@@ -147,6 +150,11 @@
+ GetGLProcAddress("glXCreateContextAttribsARB"));
+ }
+
++ if (ext.b_GLX_ARB_get_proc_address) {
++ fn.glXGetProcAddressARBFn = reinterpret_cast<glXGetProcAddressARBProc>(
++ GetGLProcAddress("glXGetProcAddressARB"));
++ }
++
+ if (ext.b_GLX_SGIX_fbconfig) {
+ fn.glXGetFBConfigFromVisualSGIXFn =
+ reinterpret_cast<glXGetFBConfigFromVisualSGIXProc>(
+@@ -348,6 +356,10 @@
+ return driver_->fn.glXGetMscRateOMLFn(dpy, drawable, numerator, denominator);
+ }
+
++__GLXextFuncPtr GLXApiBase::glXGetProcAddressARBFn(const GLubyte* procName) {
++ return driver_->fn.glXGetProcAddressARBFn(procName);
++}
++
+ void GLXApiBase::glXGetSelectedEventFn(Display* dpy,
+ GLXDrawable drawable,
+ unsigned long* mask) {
+@@ -648,6 +660,11 @@
+ return glx_api_->glXGetMscRateOMLFn(dpy, drawable, numerator, denominator);
+ }
+
++__GLXextFuncPtr TraceGLXApi::glXGetProcAddressARBFn(const GLubyte* procName) {
++ TRACE_EVENT_BINARY_EFFICIENT0("gpu", "TraceGLAPI::glXGetProcAddressARB")
++ return glx_api_->glXGetProcAddressARBFn(procName);
++}
++
+ void TraceGLXApi::glXGetSelectedEventFn(Display* dpy,
+ GLXDrawable drawable,
+ unsigned long* mask) {
+@@ -1070,6 +1087,14 @@
+ << static_cast<const void*>(denominator) << ")");
+ bool result =
+ glx_api_->glXGetMscRateOMLFn(dpy, drawable, numerator, denominator);
++ GL_SERVICE_LOG("GL_RESULT: " << result);
++ return result;
++}
++
++__GLXextFuncPtr DebugGLXApi::glXGetProcAddressARBFn(const GLubyte* procName) {
++ GL_SERVICE_LOG("glXGetProcAddressARB"
++ << "(" << static_cast<const void*>(procName) << ")");
++ __GLXextFuncPtr result = glx_api_->glXGetProcAddressARBFn(procName);
+ GL_SERVICE_LOG("GL_RESULT: " << result);
+ return result;
+ }
diff --git a/www/chromium/files/patch-ui_gl_gl_bindings_autogen_glx.h b/www/chromium/files/patch-ui_gl_gl_bindings_autogen_glx.h
new file mode 100644
index 000000000000..b384d0bdb171
--- /dev/null
+++ b/www/chromium/files/patch-ui_gl_gl_bindings_autogen_glx.h
@@ -0,0 +1,43 @@
+--- ui/gl/gl_bindings_autogen_glx.h.orig 2017-12-15 02:04:52.000000000 +0100
++++ ui/gl/gl_bindings_autogen_glx.h 2017-12-30 20:37:25.644088000 +0100
+@@ -104,6 +104,8 @@
+ GLXDrawable drawable,
+ int32_t* numerator,
+ int32_t* denominator);
++typedef __GLXextFuncPtr(GL_BINDING_CALL* glXGetProcAddressARBProc)(
++ const GLubyte* procName);
+ typedef void(GL_BINDING_CALL* glXGetSelectedEventProc)(Display* dpy,
+ GLXDrawable drawable,
+ unsigned long* mask);
+@@ -166,6 +168,7 @@
+
+ struct ExtensionsGLX {
+ bool b_GLX_ARB_create_context;
++ bool b_GLX_ARB_get_proc_address;
+ bool b_GLX_EXT_swap_control;
+ bool b_GLX_EXT_texture_from_pixmap;
+ bool b_GLX_MESA_copy_sub_buffer;
+@@ -203,6 +206,7 @@
+ glXGetFBConfigFromVisualSGIXProc glXGetFBConfigFromVisualSGIXFn;
+ glXGetFBConfigsProc glXGetFBConfigsFn;
+ glXGetMscRateOMLProc glXGetMscRateOMLFn;
++ glXGetProcAddressARBProc glXGetProcAddressARBFn;
+ glXGetSelectedEventProc glXGetSelectedEventFn;
+ glXGetSyncValuesOMLProc glXGetSyncValuesOMLFn;
+ glXGetVisualFromFBConfigProc glXGetVisualFromFBConfigFn;
+@@ -310,6 +314,7 @@
+ GLXDrawable drawable,
+ int32_t* numerator,
+ int32_t* denominator) = 0;
++ virtual __GLXextFuncPtr glXGetProcAddressARBFn(const GLubyte* procName) = 0;
+ virtual void glXGetSelectedEventFn(Display* dpy,
+ GLXDrawable drawable,
+ unsigned long* mask) = 0;
+@@ -394,6 +399,7 @@
+ ::gl::g_current_glx_context->glXGetFBConfigFromVisualSGIXFn
+ #define glXGetFBConfigs ::gl::g_current_glx_context->glXGetFBConfigsFn
+ #define glXGetMscRateOML ::gl::g_current_glx_context->glXGetMscRateOMLFn
++#define glXGetProcAddressARB ::gl::g_current_glx_context->glXGetProcAddressARBFn
+ #define glXGetSelectedEvent ::gl::g_current_glx_context->glXGetSelectedEventFn
+ #define glXGetSyncValuesOML ::gl::g_current_glx_context->glXGetSyncValuesOMLFn
+ #define glXGetVisualFromFBConfig \
diff --git a/www/chromium/files/patch-ui_gl_gl_implementation.cc b/www/chromium/files/patch-ui_gl_gl_implementation.cc
new file mode 100644
index 000000000000..a37ed2303af3
--- /dev/null
+++ b/www/chromium/files/patch-ui_gl_gl_implementation.cc
@@ -0,0 +1,11 @@
+--- ui/gl/gl_implementation.cc.orig 2017-12-24 20:24:43.427221000 +0100
++++ ui/gl/gl_implementation.cc 2017-12-24 20:25:40.159567000 +0100
+@@ -104,7 +104,7 @@
+ }
+
+ GLImplementation GetSoftwareGLImplementation() {
+-#if (defined(OS_WIN) || (defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(USE_OZONE)))
++#if (defined(OS_WIN) || ((defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) && !defined(USE_OZONE)))
+ return kGLImplementationSwiftShaderGL;
+ #else
+ return kGLImplementationOSMesaGL;
diff --git a/www/chromium/files/patch-ui_gl_sync__control__vsync__provider.cc b/www/chromium/files/patch-ui_gl_sync__control__vsync__provider.cc
index 0840b3d92b93..7f55788693be 100644
--- a/www/chromium/files/patch-ui_gl_sync__control__vsync__provider.cc
+++ b/www/chromium/files/patch-ui_gl_sync__control__vsync__provider.cc
@@ -1,5 +1,5 @@
---- ui/gl/sync_control_vsync_provider.cc.orig 2017-06-05 19:03:30 UTC
-+++ ui/gl/sync_control_vsync_provider.cc
+--- ui/gl/sync_control_vsync_provider.cc.orig 2017-12-15 02:04:52.000000000 +0100
++++ ui/gl/sync_control_vsync_provider.cc 2017-12-24 20:23:51.378230000 +0100
@@ -11,7 +11,7 @@
#include "base/trace_event/trace_event.h"
#include "build/build_config.h"
@@ -9,7 +9,7 @@
// These constants define a reasonable range for a calculated refresh interval.
// Calculating refreshes out of this range will be considered a fatal error.
const int64_t kMinVsyncIntervalUs = base::Time::kMicrosecondsPerSecond / 400;
-@@ -26,7 +26,7 @@ const double kRelativeIntervalDifferenceThreshold = 0.
+@@ -26,7 +26,7 @@
namespace gl {
SyncControlVSyncProvider::SyncControlVSyncProvider() : gfx::VSyncProvider() {
@@ -18,16 +18,16 @@
// On platforms where we can't get an accurate reading on the refresh
// rate we fall back to the assumption that we're displaying 60 frames
// per second.
-@@ -39,7 +39,7 @@ SyncControlVSyncProvider::~SyncControlVSyncProvider()
+@@ -39,7 +39,7 @@
void SyncControlVSyncProvider::GetVSyncParameters(
const UpdateVSyncCallback& callback) {
TRACE_EVENT0("gpu", "SyncControlVSyncProvider::GetVSyncParameters");
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
- base::TimeTicks timebase;
-
// The actual clock used for the system time returned by glXGetSyncValuesOML
-@@ -155,7 +155,7 @@ void SyncControlVSyncProvider::GetVSyncParameters(
+ // is unspecified. In practice, the clock used is likely to be either
+ // CLOCK_REALTIME or CLOCK_MONOTONIC, so we compare the returned time to the
+@@ -155,7 +155,7 @@
last_timebase_ = timebase;
last_media_stream_counter_ = media_stream_counter;
callback.Run(timebase, last_good_interval_);
diff --git a/www/chromium/files/patch-ui_gl_sync__control__vsync__provider.h b/www/chromium/files/patch-ui_gl_sync__control__vsync__provider.h
index 9acd54781fbf..ecd2976f4c93 100644
--- a/www/chromium/files/patch-ui_gl_sync__control__vsync__provider.h
+++ b/www/chromium/files/patch-ui_gl_sync__control__vsync__provider.h
@@ -1,6 +1,20 @@
---- ui/gl/sync_control_vsync_provider.h.orig 2017-06-05 19:03:30 UTC
-+++ ui/gl/sync_control_vsync_provider.h
-@@ -39,7 +39,7 @@ class SyncControlVSyncProvider : public gfx::VSyncProv
+--- ui/gl/sync_control_vsync_provider.h.orig 2017-12-15 02:04:52.000000000 +0100
++++ ui/gl/sync_control_vsync_provider.h 2017-12-24 20:29:58.843365000 +0100
+@@ -23,11 +23,11 @@
+ void GetVSyncParameters(const UpdateVSyncCallback& callback) override;
+
+ static constexpr bool IsSupported() {
+-#if defined(OS_LINUX)
++#if defined(OS_LINUX) || defined(OS_BSD)
+ return true;
+ #else
+ return false;
+-#endif // defined(OS_LINUX)
++#endif // defined(OS_LINUX) || defined(OS_BSD)
+ }
+
+ protected:
+@@ -38,7 +38,7 @@
virtual bool GetMscRate(int32_t* numerator, int32_t* denominator) = 0;
private:
@@ -9,10 +23,10 @@
base::TimeTicks last_timebase_;
uint64_t last_media_stream_counter_ = 0;
base::TimeDelta last_good_interval_;
-@@ -50,7 +50,7 @@ class SyncControlVSyncProvider : public gfx::VSyncProv
+@@ -49,7 +49,7 @@
// from configuration change (monitor reconfiguration, moving windows
// between monitors, suspend and resume, etc.).
- std::queue<base::TimeDelta> last_computed_intervals_;
+ base::queue<base::TimeDelta> last_computed_intervals_;
-#endif // defined(OS_LINUX)
+#endif // defined(OS_LINUX) || defined(OS_BSD)
diff --git a/www/chromium/files/patch-ui_message__center_message__center__style.h b/www/chromium/files/patch-ui_message__center_message__center__style.h
deleted file mode 100644
index 32f8996a542c..000000000000
--- a/www/chromium/files/patch-ui_message__center_message__center__style.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- ui/message_center/message_center_style.h.orig 2017-06-05 19:03:30 UTC
-+++ ui/message_center/message_center_style.h
-@@ -124,7 +124,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)
- const SkColor kButtonSeparatorColor = SkColorSetRGB(234, 234, 234);
- const SkColor kHoveredButtonBackgroundColor = SkColorSetRGB(243, 243, 243);
- #endif
diff --git a/www/chromium/files/patch-ui_message__center_views_message__center__button__bar.cc b/www/chromium/files/patch-ui_message__center_views_message__center__button__bar.cc
deleted file mode 100644
index f5c632265072..000000000000
--- a/www/chromium/files/patch-ui_message__center_views_message__center__button__bar.cc
+++ /dev/null
@@ -1,47 +0,0 @@
---- ui/message_center/views/message_center_button_bar.cc.orig 2017-06-05 19:03:30 UTC
-+++ ui/message_center/views/message_center_button_bar.cc
-@@ -95,7 +95,7 @@ MessageCenterButtonBar::MessageCenterButtonBar(
- const base::string16& title)
- : message_center_view_(message_center_view),
- message_center_(message_center),
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)
- close_bubble_button_(NULL),
- #endif
- title_arrow_(NULL),
-@@ -170,7 +170,7 @@ MessageCenterButtonBar::MessageCenterButtonBar(
- IDS_MESSAGE_CENTER_SETTINGS_BUTTON_LABEL);
- button_container_->AddChildView(settings_button_);
-
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)
- close_bubble_button_ = new views::ImageButton(this);
- close_bubble_button_->SetImage(
- views::Button::STATE_NORMAL,
-@@ -232,7 +232,7 @@ void MessageCenterButtonBar::ViewVisibilityChanged() {
- 0,
- 0);
-
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)
- // The close-bubble button.
- column->AddColumn(views::GridLayout::LEADING,
- views::GridLayout::LEADING,
-@@ -247,7 +247,7 @@ void MessageCenterButtonBar::ViewVisibilityChanged() {
- layout->AddView(title_arrow_);
- layout->AddView(notification_label_);
- layout->AddView(button_container_);
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)
- layout->AddView(close_bubble_button_);
- #endif
- }
-@@ -316,7 +316,7 @@ void MessageCenterButtonBar::ButtonPressed(views::Butt
- else
- message_center()->EnterQuietModeWithExpire(base::TimeDelta::FromDays(1));
- quiet_mode_button_->SetToggled(message_center()->IsQuietMode());
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)
- } else if (sender == close_bubble_button_) {
- message_center_view()->tray()->HideMessageCenterBubble();
- #endif
diff --git a/www/chromium/files/patch-ui_message__center_views_message__center__button__bar.h b/www/chromium/files/patch-ui_message__center_views_message__center__button__bar.h
deleted file mode 100644
index f35e77e5da87..000000000000
--- a/www/chromium/files/patch-ui_message__center_views_message__center__button__bar.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- ui/message_center/views/message_center_button_bar.h.orig 2017-06-05 19:03:30 UTC
-+++ ui/message_center/views/message_center_button_bar.h
-@@ -78,7 +78,7 @@ class MessageCenterButtonBar : public views::View,
- // close-on-deactivation is off. This is a tentative solution. Once pkotwicz
- // Fixes the problem of focus-follow-mouse, close-on-deactivation will be
- // back and this field will be removed. See crbug.com/319516.
--#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-+#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)
- views::ImageButton* close_bubble_button_;
- #endif
-
diff --git a/www/chromium/files/patch-ui_resources_ui__resources.grd b/www/chromium/files/patch-ui_resources_ui__resources.grd
deleted file mode 100644
index b6a1f37b89c3..000000000000
--- a/www/chromium/files/patch-ui_resources_ui__resources.grd
+++ /dev/null
@@ -1,11 +0,0 @@
---- ui/resources/ui_resources.grd.orig 2017-09-05 21:05:48.000000000 +0200
-+++ ui/resources/ui_resources.grd 2017-09-07 19:23:41.893385000 +0200
-@@ -15,7 +15,7 @@
- <!-- KEEP THESE IN ALPHABETICAL ORDER! DO NOT ADD TO RANDOM PLACES JUST
- BECAUSE YOUR RESOURCES ARE FUNCTIONALLY RELATED OR FALL UNDER THE
- SAME CONDITIONALS. -->
-- <if expr="is_linux and use_aura">
-+ <if expr="is_posix and use_aura">
- <structure type="chrome_scaled_image" name="IDR_AURA_CURSOR_BIG_ALIAS" file="common/pointers/alias_big.png" />
- <structure type="chrome_scaled_image" name="IDR_AURA_CURSOR_BIG_CELL" file="common/pointers/cell_big.png" />
- <structure type="chrome_scaled_image" name="IDR_AURA_CURSOR_BIG_COL_RESIZE" file="common/pointers/sb_h_double_arrow_big.png" />
diff --git a/www/chromium/files/patch-ui_views_BUILD.gn b/www/chromium/files/patch-ui_views_BUILD.gn
deleted file mode 100644
index bd243fd2c088..000000000000
--- a/www/chromium/files/patch-ui_views_BUILD.gn
+++ /dev/null
@@ -1,20 +0,0 @@
---- ui/views/BUILD.gn.orig 2017-09-05 21:05:48.000000000 +0200
-+++ ui/views/BUILD.gn 2017-09-07 02:00:50.311837000 +0200
-@@ -465,7 +465,7 @@
- if (use_x11 && !is_chromeos) {
- deps += [ "//ui/display/util" ]
- }
-- if (is_linux && !is_chromeos) {
-+ if ((is_linux || is_bsd) && !is_chromeos) {
- sources -= [ "window/window_button_order_provider.cc" ]
- deps += [ "//ui/shell_dialogs" ]
- } else {
-@@ -658,7 +658,7 @@
- } else if (use_ozone) {
- sources += [ "widget/desktop_aura/desktop_window_tree_host_ozone.cc" ]
- }
-- if (is_linux) {
-+ if (is_linux || is_bsd) {
- sources += [
- "style/platform_style_linux.cc",
- "widget/desktop_aura/window_event_filter.cc",
diff --git a/www/chromium/files/patch-ui_views_controls_webview_BUILD.gn b/www/chromium/files/patch-ui_views_controls_webview_BUILD.gn
deleted file mode 100644
index 10c48d780caa..000000000000
--- a/www/chromium/files/patch-ui_views_controls_webview_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- ui/views/controls/webview/BUILD.gn.orig 2017-04-19 19:06:54 UTC
-+++ ui/views/controls/webview/BUILD.gn
-@@ -39,7 +39,7 @@ component("webview") {
- "//ui/views",
- ]
-
-- if (is_linux || is_android) {
-+ if (is_linux || is_bsd || is_android) {
- sources += [ "unhandled_keyboard_event_handler_default.cc" ]
- }
- }
diff --git a/www/chromium/files/patch-ui_views_mus_BUILD.gn b/www/chromium/files/patch-ui_views_mus_BUILD.gn
deleted file mode 100644
index 2ef4bdf10c52..000000000000
--- a/www/chromium/files/patch-ui_views_mus_BUILD.gn
+++ /dev/null
@@ -1,11 +0,0 @@
---- ui/views/mus/BUILD.gn.orig 2017-06-05 19:03:30 UTC
-+++ ui/views/mus/BUILD.gn
-@@ -77,7 +77,7 @@ component("mus") {
- "//ui/wm",
- ]
-
-- if (is_linux && !is_android) {
-+ if ((is_linux || is_bsd) && !is_android) {
- deps += [ "//components/font_service/public/cpp" ]
- data_deps = [
- "//components/font_service",
diff --git a/www/chromium/files/sndio_input.cc b/www/chromium/files/sndio_input.cc
index 948fb1089f7c..3cf19a8a2d6d 100644
--- a/www/chromium/files/sndio_input.cc
+++ b/www/chromium/files/sndio_input.cc
@@ -121,31 +121,6 @@ void SndioAudioInputStream::Start(AudioInputCallback* callback) {
void SndioAudioInputStream::ReadAudio() {
NOTIMPLEMENTED();
- DCHECK(callback_);
-
- int num_buffers = sndio_rec_bufsize_ / params_.frames_per_buffer();
- double normalized_volume = 0.0;
-
- // Update the AGC volume level once every second. Note that, |volume| is
- // also updated each time SetVolume() is called through IPC by the
- // render-side AGC.
- GetAgcVolume(&normalized_volume);
-
- while (num_buffers--) {
- int frames_read = sio_read(device_handle_, audio_buffer_.get(),
- params_.frames_per_buffer());
- if (frames_read == params_.frames_per_buffer()) {
- audio_bus_->FromInterleaved(audio_buffer_.get(),
- audio_bus_->frames(),
- params_.bits_per_sample() / 8);
- callback_->OnData(
- this, audio_bus_.get(), hw_delay_, normalized_volume);
- } else {
- LOG(WARNING) << "sio_read() returning less than expected frames: "
- << frames_read << " vs. " << params_.frames_per_buffer()
- << ". Dropping this buffer.";
- }
- }
}
void SndioAudioInputStream::Stop() {