b7735d8105
This CL adds the following build flags to support building product partition from Android build system. - BOARD_AVB_PRODUCT_ADD_HASHTREE_FOOTER_ARGS - BOARD_AVB_PRODUCT_KEY_PATH - BOARD_AVB_PRODUCT_ALGORITHM - BOARD_AVB_PRODUCT_ROLLBACK_INDEX_LOCATION - BOARD_PREBUILT_PRODUCTIMAGE - BOARD_PRODUCTIMAGE_EXTFS_INODE_COUNT - BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE - BOARD_PRODUCTIMAGE_PARTITION_SIZE - BOARD_PRODUCTIMAGE_SQUASHFS_BLOCK_SIZE - BOARD_PRODUCTIMAGE_SQUASHFS_COMPRESSOR - BOARD_PRODUCTIMAGE_SQUASHFS_COMPRESSOR_OPT - BOARD_PRODUCTIMAGE_SQUASHFS_DISABLE_4K_ALIGN - BOARD_USES_PRODUCTIMAGE - LOCAL_PRODUCT_MODULE - PRODUCT_FOOTER_ARGS - PRODUCT_PRODUCT_BASE_FS_PATH - PRODUCT_PRODUCT_VERITY_PARTITION - TARGET_COPY_OUT_PRODUCT - TARGET_OUT_PRODUCT* And PRODUCT_PRODUCT_PROPERTIES is added to save product-specific properties in /product/build.prop. Bug: 64195575 Test: succeeded building product.img with BOARD_PRODUCTIMAGE_PARTITION_SIZE, BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE and PRODUCT_PRODUCT_VERITY_PARTITION. Change-Id: I774e6a38003734421591e51bed103802ff84f432
55 lines
1.9 KiB
Bash
Executable file
55 lines
1.9 KiB
Bash
Executable file
#!/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}"'/Usage.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"
|
|
pnod Quickly rebuild the product image from built packages
|
|
Stands for "Product, 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"
|