forked from openkylin/platform_build
54 lines
1.8 KiB
Bash
54 lines
1.8 KiB
Bash
|
#!/bin/bash
|
||
|
|
||
|
# locate some directories
|
||
|
cd "$(dirname $0)"
|
||
|
SCRIPT_DIR="${PWD}"
|
||
|
cd ../..
|
||
|
TOP="${PWD}"
|
||
|
|
||
|
message='The basic Android build process is:
|
||
|
|
||
|
cd '"${TOP}"'
|
||
|
source build/envsetup.sh # Add "lunch" (and other utilities and variables)
|
||
|
# to the shell environment.
|
||
|
lunch [<product>-<variant>] # Choose the device to target.
|
||
|
m -j [<goals>] # Execute the configured build.
|
||
|
|
||
|
Usage of "m" imitates usage of the program "make".
|
||
|
See '"${SCRIPT_DIR}"'/README.txt for more info about build usage and concepts.
|
||
|
|
||
|
Common goals are:
|
||
|
|
||
|
clean (aka clobber) equivalent to rm -rf out/
|
||
|
checkbuild Build every module defined in the source tree
|
||
|
droid Default target
|
||
|
nothing Do not build anything, just parse and validate the build structure
|
||
|
|
||
|
java Build all the java code in the source tree
|
||
|
native Build all the native code in the source tree
|
||
|
|
||
|
host Build all the host code (not to be run on a device) in the source tree
|
||
|
target Build all the target code (to be run on the device) in the source tree
|
||
|
|
||
|
(java|native)-(host|target)
|
||
|
(host|target)-(java|native)
|
||
|
Build the intersection of the two given arguments
|
||
|
|
||
|
snod Quickly rebuild the system image from built packages
|
||
|
Stands for "System, NO Dependencies"
|
||
|
vnod Quickly rebuild the vendor image from built packages
|
||
|
Stands for "Vendor, NO Dependencies"
|
||
|
|
||
|
|
||
|
So, for example, you could run:
|
||
|
|
||
|
cd '"${TOP}"'
|
||
|
source build/envsetup.sh
|
||
|
lunch aosp_arm-userdebug
|
||
|
m -j java
|
||
|
|
||
|
to build all of the java code for the userdebug variant of the aosp_arm device.
|
||
|
'
|
||
|
|
||
|
echo "$message"
|