[cr149] //chrome/browser/first_run modularised

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/03702156827220b6df76964a262caf312e8fa0f4

commit 03702156827220b6df76964a262caf312e8fa0f4
Author: Keybo Qian <keybo@google.com>
Date:   Fri Apr 17 12:00:06 2026 -0700

    Modularize //chrome/browser/first_run

    Extract the `first_run` feature out of the monolithic `//chrome/browser`
    and `//chrome/test` targets into its own dedicated `BUILD.gn` file.

    - Extracts prod code, `unit_tests`, and `browser_tests` into
      `//chrome/browser/first_run/BUILD.gn`.
    - Adds a `DEPS` file to enforce strict dependency boundaries.
    - Extracts `scoped_relaunch_chrome_browser_override` to a `test_support`
      target.
    - Guards `browser_tests` with `!is_android` to fix compile failures.
    - Adds temporary circular include exceptions to unblock the extraction.

    This refactoring is part of the ongoing effort to break down the Chrome
    browser monolith, which helps improve build times, enforces stricter
    dependency boundaries, and makes the codebase easier to maintain.

    Cq-Include-Trybots: luci.chromium.try:android-cast-arm-rel
    Bug: 500390199
    Change-Id: I2d62edb19cfe1b1f241e21fe31e9cae7df974e8b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7763734
    Reviewed-by: Dana Fried <dfried@chromium.org>
    Auto-Submit: Keybo Qian <keybo@google.com>
    Commit-Queue: Keybo Qian <keybo@google.com>
    Cr-Commit-Position: refs/heads/main@{#1616736}
This commit is contained in:
Claudio DeSouza
2026-05-22 16:25:06 -04:00
committed by Max Karolinskiy
parent e45264bb6c
commit 611ecdf354
5 changed files with 5 additions and 0 deletions
+1
View File
@@ -66,6 +66,7 @@ source_set("browser_tests") {
"//brave/components/brave_rewards/core/mojom:engine",
"//brave/components/l10n/common:test_support",
"//brave/components/ntp_background_images/common",
"//chrome/browser/first_run",
"//chrome/browser/ui/browser_window",
"//components/policy/core/browser",
"//components/policy/core/common:test_support",
+1
View File
@@ -55,6 +55,7 @@ source_set("brave_stats") {
"//brave/components/serp_metrics:prefs",
"//brave/components/version_info",
"//chrome/browser:browser_process",
"//chrome/browser/first_run",
"//chrome/browser/headless",
"//chrome/browser/profiles:profile",
"//chrome/browser/profiles:profile_manager",
+1
View File
@@ -432,6 +432,7 @@ source_set("ui") {
"//chrome/browser/content_settings:content_settings_factory",
"//chrome/browser/contextual_search",
"//chrome/browser/favicon",
"//chrome/browser/first_run",
"//chrome/browser/importer",
"//chrome/browser/profiles",
"//chrome/browser/search",
+1
View File
@@ -55,6 +55,7 @@ source_set("sidebar_impl") {
"//brave/components/sidebar/common",
"//chrome/browser:browser_process",
"//chrome/browser/favicon",
"//chrome/browser/first_run",
"//chrome/browser/history",
"//chrome/browser/image_fetcher",
"//chrome/browser/profiles",
+1
View File
@@ -13,6 +13,7 @@ source_set("upgrade_when_idle") {
# here because it would create a dependency cycle.
deps = [
"//base",
"//chrome/browser/first_run",
"//chrome/browser/profiles:profile_manager",
"//chrome/browser/ui/browser_window",
"//chrome/browser/upgrade_detector",