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