xref: /aosp_15_r20/external/cronet/build/README.md (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker# About
2*6777b538SAndroid Build Coastguard Worker`//build` contains:
3*6777b538SAndroid Build Coastguard Worker * Core GN templates and configuration
4*6777b538SAndroid Build Coastguard Worker * Core Python build scripts
5*6777b538SAndroid Build Coastguard Worker
6*6777b538SAndroid Build Coastguard WorkerSince this directory is DEPS'ed in by some other repositories (webrtc, pdfium,
7*6777b538SAndroid Build Coastguard Workerv8, etc), it should be kept as self-contained as possible by not referring
8*6777b538SAndroid Build Coastguard Workerto files outside of it. Some exceptions exist (`//testing`, select
9*6777b538SAndroid Build Coastguard Worker`//third_party` subdirectories), but new dependencies tend to break these other
10*6777b538SAndroid Build Coastguard Workerprojects, and so should be avoided.
11*6777b538SAndroid Build Coastguard Worker
12*6777b538SAndroid Build Coastguard WorkerChanges to `//build` should be landed in the Chromium repo. They will then be
13*6777b538SAndroid Build Coastguard Workerreplicated to the stand-alone [build repo](https://chromium.googlesource.com/chromium/src/build)
14*6777b538SAndroid Build Coastguard Workerby the [gsubtreed tool.](https://chromium.googlesource.com/infra/infra/+/main/infra/services/gsubtreed)
15*6777b538SAndroid Build Coastguard WorkerNote: You can find all directories already  available through gsubtreed in the
16*6777b538SAndroid Build Coastguard Worker[list of all chromium repos](https://chromium.googlesource.com/).
17*6777b538SAndroid Build Coastguard Worker
18*6777b538SAndroid Build Coastguard Worker## Contents
19*6777b538SAndroid Build Coastguard Worker * `//build/config` - Common templates via `.gni` files.
20*6777b538SAndroid Build Coastguard Worker * `//build/toolchain` - GN toolchain definitions.
21*6777b538SAndroid Build Coastguard Worker * `Other .py files` - Some are used by GN/Ninja. Some by gclient hooks, some
22*6777b538SAndroid Build Coastguard Worker   are just random utilities.
23*6777b538SAndroid Build Coastguard Worker
24*6777b538SAndroid Build Coastguard WorkerFiles referenced by `//.gn`:
25*6777b538SAndroid Build Coastguard Worker * `//build/BUILDCONFIG.gn` - Included by all `BUILD.gn` files.
26*6777b538SAndroid Build Coastguard Worker * `//build/secondary` - An overlay for `BUILD.gn` files. Enables adding
27*6777b538SAndroid Build Coastguard Worker   `BUILD.gn` to directories that live in sub-repositories.
28*6777b538SAndroid Build Coastguard Worker * `//build_overrides` -
29*6777b538SAndroid Build Coastguard Worker   Refer to [//build_overrides/README.md](../build_overrides/README.md).
30*6777b538SAndroid Build Coastguard Worker
31*6777b538SAndroid Build Coastguard Worker## Docs
32*6777b538SAndroid Build Coastguard Worker
33*6777b538SAndroid Build Coastguard Worker* [Writing GN Templates](docs/writing_gn_templates.md)
34*6777b538SAndroid Build Coastguard Worker* [Debugging Slow Builds](docs/debugging_slow_builds.md)
35*6777b538SAndroid Build Coastguard Worker* [Mac Hermetic Toolchains](docs/mac_hermetic_toolchain.md)
36*6777b538SAndroid Build Coastguard Worker* [Android Build Documentation](android/docs/README.md)
37