0
Files
src/build
Andrew Grieve 2f27c611aa Convert clang & rust exec_script()s to read_files()
Seems to shaves about 100ms off of "gn gen" for me locally, although GN
runtimes have pretty high variance, so it might even be less than that.

gn gen --time shows these as:

Script execute times: (total time in ms, # executions, name)
   824.36  6  //tools/clang/scripts/update.py
   807.49  6  //tools/rust/update_rust.py

Bug: 397998718
Change-Id: Ic99b459c958bced9b97c4d81e34a65d1b64a808b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6488528
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1452750}
2025-04-28 10:58:22 -07:00
..
2024-08-06 16:00:03 +00:00
2023-08-09 16:48:03 +00:00
2024-12-03 02:17:15 +00:00
2025-03-07 08:34:56 -08:00
2025-02-27 03:12:10 -08:00

About

//build contains:

  • Core GN templates and configuration
  • Core Python build scripts

Since this directory is DEPS'ed in by some other repositories (webrtc, pdfium, v8, etc), it should be kept as self-contained as possible by not referring to files outside of it. Some exceptions exist (//testing, select //third_party subdirectories), but new dependencies tend to break these other projects, and so should be avoided.

Changes to //build should be landed in the Chromium repo. They will then be replicated to the stand-alone build repo by the gsubtreed tool. Note: You can find all directories already available through gsubtreed in the list of all chromium repos.

Contents

  • //build/config - Common templates via .gni files.
  • //build/toolchain - GN toolchain definitions.
  • Other .py files - Some are used by GN/Ninja. Some by gclient hooks, some are just random utilities.

Files referenced by //.gn:

  • //build/BUILDCONFIG.gn - Included by all BUILD.gn files.
  • //build/secondary - An overlay for BUILD.gn files. Enables adding BUILD.gn to directories that live in sub-repositories.
  • //build_overrides - Refer to //build_overrides/README.md.

Docs