Blimp only supports building using GN. A quick overview over how to use GN can be found in the GN quick start guide.
There are two different build configurations depending on what you want to build:
Create an out-directory and set the GN args:
mkdir -p out-android/Debug echo "import(\"//build/args/blimp_client.gn\")" > out-android/Debug/args.gn gn gen out-android/Debug
To build:
ninja -C out-android/Debug blimp
This will also generate an incremental APK, which you can install with this command:
out-android/Debug/bin/install_blimp_apk_incremental
During development, it might be beneficial to put these two commands together like this:
ninja -C out-android/Debug blimp && \ out-android/Debug/bin/install_blimp_apk_incremental
To add your own build preferences:
gn args out-android/Debug
Create another out-directory and set the GN args:
mkdir -p out-linux/Debug echo "import(\"//build/args/blimp_engine.gn\")" > out-linux/Debug/args.gn gn gen out-linux/Debug
To build:
ninja -C out-linux/Debug blimp
To add your own build preferences
gn args out-linux/Debug
Adding new build arguments should be fairly rare. Arguments first need to be declared.
They can then be used to change how the binary is built or passed through to code as a defines.
Finally the Blimp argument templates should be updated to reflect the (non-default for Chrome) behavior desired by Blimp (see below).
Build argument templates exist for the client and engine at build/args/blimp_client.gn
and 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.