summaryrefslogtreecommitdiffstats
path: root/blimp/docs
diff options
context:
space:
mode:
authorjessicag <jessicag@chromium.org>2016-03-11 11:38:17 -0800
committerCommit bot <commit-bot@chromium.org>2016-03-11 19:39:59 +0000
commit4a8943a3f2bcb06115d9c82fd5158ccba07186a2 (patch)
tree289c47a6e9c142ff5fd7c8770f04aa1b63e36847 /blimp/docs
parent4efd78d8bb1ccbb9f18cee6b7d92ffe52ec766bc (diff)
downloadchromium_src-4a8943a3f2bcb06115d9c82fd5158ccba07186a2.zip
chromium_src-4a8943a3f2bcb06115d9c82fd5158ccba07186a2.tar.gz
chromium_src-4a8943a3f2bcb06115d9c82fd5158ccba07186a2.tar.bz2
Create doc on build arg best practices for Blimp.
Currently this information is either not captured in docs or widely spread. This document provides the key guidelines and best practices for creating and using a new Chrome build arg. BUG=593073 Review URL: https://codereview.chromium.org/1772213002 Cr-Commit-Position: refs/heads/master@{#380702}
Diffstat (limited to 'blimp/docs')
-rw-r--r--blimp/docs/build.md29
1 files changed, 26 insertions, 3 deletions
diff --git a/blimp/docs/build.md b/blimp/docs/build.md
index a235121..e5e20d7 100644
--- a/blimp/docs/build.md
+++ b/blimp/docs/build.md
@@ -3,10 +3,12 @@ Blimp only supports building using [GN](../../tools/gn/README.md). A quick
overview over how to use GN can be found in the GN
[quick start guide](../../tools/gn/docs/quick_start.md).
-There are three different build configurations depending on what you want to
+## Building
+
+There are two different build configurations depending on what you want to
build:
-## Android client
+### Android client
Create an out-directory and set the GN args:
@@ -35,7 +37,7 @@ To add your own build preferences
gn args out-android/Debug
```
-## Engine
+### Engine
Create another out-directory and set the GN args:
@@ -56,3 +58,24 @@ To add your own build preferences
```bash
gn args out-android/Debug
```
+
+## Adding new build arguments
+
+Adding new build arguments should be fairly rare. Arguments first need to be
+[declared](../../tools/gn/docs/quick_start.md#Add-a-new-build-argument).
+
+They can then be used to change how the binary is built or passed through to
+code as a
+[defines](../../tools/gn/docs/reference.md#defines_C-preprocessor-defines).
+
+Finally the Blimp argument templates should be updated to reflect the
+(non-default for Chrome) behavior desired by Blimp (see below).
+
+## Updating bulid arguments in templates
+
+Build argument templates exist for the client and engine at
+[`build/args/blimp_client.gn`](../../build/args/blimp_client.gn) and
+[`build/args/blimp_engine.gn`](../../build/args/blimp_engine.gn).
+
+These can be updated as in the same manner as your personal `args.gn` files
+to override default argument values.