diff --git a/.gn b/.gn index 00cb71c3f048e..1c7897a648315 100644 --- a/.gn +++ b/.gn @@ -65,7 +65,7 @@ default_args = { no_check_targets = [ "//extensions/browser:*", # 20 errors "//extensions:*", # 28 errors - "//headless:*", # 167 errors + "//headless:*", # 107 errors "//ppapi/proxy:ipc_sources", # 13 errors "//ppapi/thunk:*", # 1071 errors "//remoting/host/security_key:*", # 10 errors diff --git a/headless/BUILD.gn b/headless/BUILD.gn index 2b5bd5a1f7201..f9e3e8b323614 100644 --- a/headless/BUILD.gn +++ b/headless/BUILD.gn @@ -264,8 +264,8 @@ inspector_protocol_generate("protocol_sources") { # |headless_non_renderer| components. source_set("headless_shared_sources") { visibility = [ - "//headless:headless", - "//headless:headless_non_renderer", + ":headless", + ":headless_non_renderer", ] defines = [] @@ -309,10 +309,13 @@ source_set("headless_shared_sources") { ] if (!is_fuchsia) { - deps += [ "//components/crash/content/browser" ] + deps += [ + "//components/crash/content/browser", + "//components/crash/core/app", + ] } - if (is_component_build && is_win) { - deps += [ "//components/crash/core/app:crash_export_thunks" ] + if (is_win) { + deps += [ "//sandbox" ] } configs += [ ":inside_headless_component" ] @@ -434,16 +437,26 @@ component("headless_non_renderer") { ":headless_shared_sources", ":version_header", "//base:base_static", + "//build:branding_buildflags", "//build:chromeos_buildflags", "//components/cookie_config", + "//components/embedder_support", "//components/keyed_service/content", + "//components/policy:policy_code_generate", + "//components/policy/core/browser", + "//components/policy/core/common:common_constants", + "//components/pref_registry", + "//components/prefs", "//components/profile_metrics", "//components/security_state/core", + "//content/public/app", "//content/public/browser", "//content/public/common", + "//printing/buildflags", "//services/cert_verifier/public/mojom", "//services/device/public/cpp/geolocation", "//services/service_manager/public/cpp", + "//third_party/inspector_protocol:crdtp", "//ui/base", "//ui/base/clipboard", "//ui/compositor", @@ -454,7 +467,12 @@ component("headless_non_renderer") { ] if (enable_basic_printing) { - deps += [ "//components/printing/browser" ] + deps += [ + "//components/printing/browser", + "//components/printing/common:mojo_interfaces", + "//printing", + "//printing/mojom", + ] } if (is_component_build) { @@ -492,10 +510,10 @@ component("headless_non_renderer") { ] if (!is_fuchsia) { - deps += [ "//components/crash/content/browser" ] - } - if (is_win) { - deps += [ "//components/crash/core/app:crash_export_thunks" ] + deps += [ + "//components/crash/content/browser", + "//components/crash/core/app", + ] } if (enable_basic_printing) { @@ -507,8 +525,15 @@ component("headless_non_renderer") { ] } + if (headless_use_prefs) { + deps += [ "//components/os_crypt" ] + } + if (headless_use_policy) { - deps += [ "//components/policy/content" ] + deps += [ + "//components/policy/content", + "//components/user_prefs", + ] } } @@ -593,11 +618,24 @@ if (!is_component_build) { deps = [ ":headless", + "//build:chromeos_buildflags", "//components/crash/core/common", + "//components/security_state/content", + "//components/security_state/core", + "//content/public/app", + "//content/public/browser", + "//content/public/common", + "//content/public/renderer", + "//content/public/utility", + "//printing/buildflags", "//third_party/blink/public:blink_headers", "//ui/base", + "//ui/compositor", "//v8", ] + if (use_ozone) { + deps += [ "//ui/ozone" ] + } if (enable_basic_printing) { deps += [ "//components/printing/renderer", @@ -614,6 +652,10 @@ if (!is_component_build) { "$root_gen_dir/headless/embedded_resource_pak.h", ] } + + if (is_mac || is_win || is_linux || is_chromeos) { + deps += [ "//components/crash/core/app" ] + } } } else { # For component builds all dependencies are already included in the headless @@ -660,6 +702,8 @@ test("headless_unittests") { sources += [ "lib/browser/headless_printing_unittest.cc" ] deps += [ "//components/printing/browser", + "//printing", + "//printing/buildflags", "//third_party/blink/public:blink", ] } @@ -737,8 +781,12 @@ test("headless_browsertests") { ":headless_shell_lib", "//base", "//cc:test_support", + "//components/policy/core/browser", "//components/security_state/content", + "//content/test:browsertest_support", "//content/test:test_support", + "//net:test_support", + "//printing/buildflags", "//services/network/public/mojom", "//testing/gmock", "//testing/gtest", @@ -753,6 +801,7 @@ test("headless_browsertests") { deps += [ "//components/printing/browser", "//pdf", + "//printing", ] } @@ -777,12 +826,19 @@ if (is_win) { deps = [ ":headless_non_renderer", "//build:branding_buildflags", + "//components/crash/core/app:run_as_crashpad_handler", + "//components/embedder_support", "//content:sandbox_helper_win", + "//content/public/app", "//content/public/browser", "//content/public/common", "//net", + "//printing/buildflags", "//sandbox", ] + if (headless_use_policy) { + deps += [ "//components/policy/content" ] + } configs += [ ":headless_defines_config" ] } } @@ -809,11 +865,15 @@ static_library("headless_shell_lib") { deps = [ ":headless_renderer", "//build:branding_buildflags", + "//components/embedder_support", "//components/security_state/content", + "//content", "//content/public/app", "//content/public/browser", "//content/public/child:child", "//content/public/common", + "//content/public/utility", + "//printing/buildflags", ] public_deps = [ "//base" ] @@ -843,7 +903,6 @@ static_library("headless_shell_lib") { defines = [ "HEADLESS_USE_CRASHPAD" ] deps += [ - "//components/crash/core/app:crash_export_thunks", "//components/crash/core/app:run_as_crashpad_handler", "//content:sandbox_helper_win", "//sandbox", @@ -854,6 +913,10 @@ static_library("headless_shell_lib") { deps += [ "//components/os_crypt" ] } + if (is_win || (is_posix && !is_mac)) { + deps += [ "//components/crash/core/app" ] + } + configs += [ ":headless_defines_config" ] } @@ -881,7 +944,10 @@ executable("headless_shell") { } if (is_win) { - deps += [ "//build/win:default_exe_manifest" ] + deps += [ + "//build/win:default_exe_manifest", + "//content/public/app", + ] } if (is_mac) { @@ -906,8 +972,15 @@ executable("headless_example") { deps = [ ":headless_shell_lib", + "//content", + "//sandbox", "//skia", # we need this to override font render hinting in headless build + "//ui/gfx/geometry", ] + if (is_win) { + deps += [ "//content/public/app" ] + } + configs += [ ":headless_defines_config" ] } diff --git a/headless/app/headless_shell.cc b/headless/app/headless_shell.cc index f15a5bd721445..3cd013ed737cc 100644 --- a/headless/app/headless_shell.cc +++ b/headless/app/headless_shell.cc @@ -52,13 +52,13 @@ #include "ui/gfx/geometry/size.h" #if defined(OS_WIN) -#include "components/crash/core/app/crash_switches.h" +#include "components/crash/core/app/crash_switches.h" // nogncheck #include "components/crash/core/app/run_as_crashpad_handler_win.h" #include "sandbox/win/src/sandbox_types.h" #endif #if defined(OS_MAC) -#include "components/os_crypt/os_crypt_switches.h" +#include "components/os_crypt/os_crypt_switches.h" // nogncheck #endif #if defined(HEADLESS_USE_POLICY) diff --git a/headless/app/headless_shell_main.cc b/headless/app/headless_shell_main.cc index a51bc44301a79..f2457facea571 100644 --- a/headless/app/headless_shell_main.cc +++ b/headless/app/headless_shell_main.cc @@ -7,7 +7,7 @@ #if defined(OS_WIN) #include "content/public/app/sandbox_helper_win.h" -#include "sandbox/win/src/sandbox_types.h" +#include "sandbox/win/src/sandbox_types.h" // nogncheck #elif defined(OS_MAC) #include "base/check.h" #include "sandbox/mac/seatbelt_exec.h" diff --git a/headless/lib/browser/headless_browser_context_impl.cc b/headless/lib/browser/headless_browser_context_impl.cc index 86f66e5046fcb..d5cfa9e866d82 100644 --- a/headless/lib/browser/headless_browser_context_impl.cc +++ b/headless/lib/browser/headless_browser_context_impl.cc @@ -27,7 +27,7 @@ #include "ui/base/resource/resource_bundle.h" #if defined(HEADLESS_USE_POLICY) -#include "components/user_prefs/user_prefs.h" +#include "components/user_prefs/user_prefs.h" // nogncheck #endif namespace headless { diff --git a/headless/lib/browser/headless_browser_main_parts.cc b/headless/lib/browser/headless_browser_main_parts.cc index b6d0091acaee1..e8d5d3e7cd140 100644 --- a/headless/lib/browser/headless_browser_main_parts.cc +++ b/headless/lib/browser/headless_browser_main_parts.cc @@ -14,7 +14,7 @@ #include "headless/lib/browser/headless_screen.h" #if defined(HEADLESS_USE_PREFS) -#include "components/os_crypt/os_crypt.h" +#include "components/os_crypt/os_crypt.h" // nogncheck #include "components/pref_registry/pref_registry_syncable.h" #include "components/prefs/in_memory_pref_store.h" #include "components/prefs/json_pref_store.h" diff --git a/headless/lib/browser/headless_content_browser_client.cc b/headless/lib/browser/headless_content_browser_client.cc index a828ac9ab9205..054f7a7dff9be 100644 --- a/headless/lib/browser/headless_content_browser_client.cc +++ b/headless/lib/browser/headless_content_browser_client.cc @@ -53,7 +53,7 @@ #if defined(HEADLESS_USE_POLICY) #include "components/policy/content/policy_blocklist_navigation_throttle.h" -#include "components/policy/core/common/policy_service.h" +#include "components/policy/core/common/policy_service.h" // nogncheck http://crbug.com/1227148 #include "content/public/browser/navigation_handle.h" #include "content/public/browser/navigation_throttle.h" #endif // defined(HEADLESS_USE_POLICY) diff --git a/headless/lib/browser/headless_request_context_manager.cc b/headless/lib/browser/headless_request_context_manager.cc index 3b54e85719099..fa0e7e7548405 100644 --- a/headless/lib/browser/headless_request_context_manager.cc +++ b/headless/lib/browser/headless_request_context_manager.cc @@ -26,7 +26,7 @@ #include "services/network/url_request_context_builder_mojo.h" #if defined(HEADLESS_USE_PREFS) -#include "components/os_crypt/os_crypt.h" +#include "components/os_crypt/os_crypt.h" // nogncheck #include "content/public/common/network_service_util.h" #endif diff --git a/headless/lib/browser/policy/headless_browser_policy_connector.cc b/headless/lib/browser/policy/headless_browser_policy_connector.cc index e36021a57022f..ee63ed9954855 100644 --- a/headless/lib/browser/policy/headless_browser_policy_connector.cc +++ b/headless/lib/browser/policy/headless_browser_policy_connector.cc @@ -14,9 +14,9 @@ #include "base/task/thread_pool.h" #include "build/branding_buildflags.h" #include "build/build_config.h" -#include "components/policy/core/browser/configuration_policy_handler.h" -#include "components/policy/core/browser/url_blocklist_policy_handler.h" -#include "components/policy/core/common/async_policy_provider.h" +#include "components/policy/core/browser/configuration_policy_handler.h" // nogncheck http://crbug.com/1227148 +#include "components/policy/core/browser/url_blocklist_policy_handler.h" // nogncheck http://crbug.com/1227148 +#include "components/policy/core/common/async_policy_provider.h" // nogncheck http://crbug.com/1227148 #include "components/policy/core/common/policy_pref_names.h" #include "components/policy/policy_constants.h" #include "headless/lib/browser/headless_pref_names.h" @@ -33,7 +33,7 @@ #include "components/policy/core/common/policy_loader_mac.h" #include "components/policy/core/common/preferences_mac.h" #elif defined(OS_POSIX) && !defined(OS_ANDROID) -#include "components/policy/core/common/config_dir_policy_loader.h" +#include "components/policy/core/common/config_dir_policy_loader.h" // nogncheck http://crbug.com/1227148 #endif namespace policy { diff --git a/headless/lib/browser/policy/headless_browser_policy_connector.h b/headless/lib/browser/policy/headless_browser_policy_connector.h index b067c01239784..e15bba06996d5 100644 --- a/headless/lib/browser/policy/headless_browser_policy_connector.h +++ b/headless/lib/browser/policy/headless_browser_policy_connector.h @@ -6,8 +6,8 @@ #define HEADLESS_LIB_BROWSER_POLICY_HEADLESS_BROWSER_POLICY_CONNECTOR_H_ #include "base/memory/ref_counted.h" -#include "components/policy/core/browser/browser_policy_connector.h" -#include "components/policy/core/browser/configuration_policy_pref_store.h" +#include "components/policy/core/browser/browser_policy_connector.h" // nogncheck http://crbug.com/1227148 +#include "components/policy/core/browser/configuration_policy_pref_store.h" // nogncheck http://crbug.com/1227148 #include "services/network/public/cpp/shared_url_loader_factory.h" namespace policy { diff --git a/headless/lib/browser/policy/headless_mode_policy.h b/headless/lib/browser/policy/headless_mode_policy.h index da2c8896d669b..f73b04aec871a 100644 --- a/headless/lib/browser/policy/headless_mode_policy.h +++ b/headless/lib/browser/policy/headless_mode_policy.h @@ -5,7 +5,7 @@ #ifndef HEADLESS_LIB_BROWSER_POLICY_HEADLESS_MODE_POLICY_H_ #define HEADLESS_LIB_BROWSER_POLICY_HEADLESS_MODE_POLICY_H_ -#include "components/policy/core/browser/configuration_policy_handler.h" +#include "components/policy/core/browser/configuration_policy_handler.h" // nogncheck http://crbug.com/1227148 #include "headless/public/headless_export.h" class PrefService; diff --git a/headless/lib/browser/policy/headless_policies.cc b/headless/lib/browser/policy/headless_policies.cc index f0edc59d56335..b48ac82932da6 100644 --- a/headless/lib/browser/policy/headless_policies.cc +++ b/headless/lib/browser/policy/headless_policies.cc @@ -5,7 +5,7 @@ #include "headless/lib/browser/policy/headless_policies.h" #include "base/check.h" -#include "components/policy/core/browser/url_blocklist_manager.h" +#include "components/policy/core/browser/url_blocklist_manager.h" // nogncheck http://crbug.com/1227148 #include "components/policy/policy_constants.h" #include "components/pref_registry/pref_registry_syncable.h" #include "components/prefs/pref_service.h" diff --git a/headless/lib/browser/protocol/headless_handler.cc b/headless/lib/browser/protocol/headless_handler.cc index 77d3f93453414..bdc42f01da20b 100644 --- a/headless/lib/browser/protocol/headless_handler.cc +++ b/headless/lib/browser/protocol/headless_handler.cc @@ -14,7 +14,7 @@ #include "components/viz/common/switches.h" #include "content/public/common/content_switches.h" #include "headless/lib/browser/headless_browser_impl.h" -#include "headless/lib/browser/headless_web_contents_impl.h" +#include "headless/lib/browser/headless_web_contents_impl.h" // nogncheck http://crbug.com/1227378 #include "third_party/skia/include/core/SkBitmap.h" #include "ui/base/resource/resource_bundle.h" #include "ui/gfx/codec/jpeg_codec.h" diff --git a/headless/public/headless_browser.h b/headless/public/headless_browser.h index dfd6be4f984dd..9e2b6f5bfb7f3 100644 --- a/headless/public/headless_browser.h +++ b/headless/public/headless_browser.h @@ -15,6 +15,7 @@ #include "base/files/file_path.h" #include "base/macros.h" #include "base/memory/ref_counted.h" +#include "build/build_config.h" #include "headless/public/headless_browser_context.h" #include "headless/public/headless_devtools_channel.h" #include "headless/public/headless_export.h" diff --git a/headless/test/headless_browser_browsertest.cc b/headless/test/headless_browser_browsertest.cc index f7f76a6d30b06..083f1de796c82 100644 --- a/headless/test/headless_browser_browsertest.cc +++ b/headless/test/headless_browser_browsertest.cc @@ -52,7 +52,7 @@ #include "ui/gfx/geometry/size.h" #if defined(OS_MAC) -#include "third_party/crashpad/crashpad/client/crash_report_database.h" +#include "third_party/crashpad/crashpad/client/crash_report_database.h" // nogncheck #endif using testing::UnorderedElementsAre;