Clone this repo:

Branches

  1. d1cac3b [exit-time-destructors] Enable by default based on build_with_chromium by Lei Zhang · 11 hours ago main
  2. 17914a5 build: calculate default symbol_level before declare_args by Takuto Ikuta · 17 hours ago
  3. 3b1b46f [iOS arm64e] Do not use lld to link when building for arm64e by Justin Novosad · 34 hours ago
  4. dd54dd5 Disable -Wunused-but-set-global by Devon Loehr · 2 days ago
  5. 4f3f3e3 Move base::Feature API and related macros to a new, self-contained, header. by Roger McFarlane · 2 days ago

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