diff options
| author | 2021-10-28 02:12:07 +0100 | |
|---|---|---|
| committer | 2021-11-09 13:02:37 +0000 | |
| commit | 1aa30e5ec21573594b45a790175b500655e5d01e (patch) | |
| tree | d8f5d1cbde396e712e2f7bca16e9555cf63d3f01 | |
| parent | cc76459f5d32d9002d8d0a432ccd6a3ca1f25bd0 (diff) | |
Handle TARGET_FLATTEN_APEX and PRODUCT_COMPRESSED_APEX being "" when
false.
Also combine calls to Soong to dump build variables, and make it
possible to pass --bitness to art_test_apex.py.
Test: art/build/apex/runtests.sh
Test: art/build/apex/runtests.sh --bitness=multilib
Change-Id: I838693e894a4fe1d788cd3bbc8df66382d5fe442
| -rwxr-xr-x | build/apex/runtests.sh | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/build/apex/runtests.sh b/build/apex/runtests.sh index 232daa300d..8044574e05 100755 --- a/build/apex/runtests.sh +++ b/build/apex/runtests.sh @@ -15,6 +15,8 @@ # limitations under the License. # +set -e + # Run ART APEX tests. SCRIPT_DIR=$(dirname $0) @@ -41,13 +43,11 @@ function setup_die { [[ -n "$ANDROID_PRODUCT_OUT" ]] || setup_die [[ -n "$ANDROID_HOST_OUT" ]] || setup_die -flattened_apex_p=$($ANDROID_BUILD_TOP/build/soong/soong_ui.bash \ - --dumpvar-mode TARGET_FLATTEN_APEX) \ - || setup_die - -compressed_apex_p=$($ANDROID_BUILD_TOP/build/soong/soong_ui.bash \ - --dumpvar-mode PRODUCT_COMPRESSED_APEX) \ - || setup_die +vars="$($ANDROID_BUILD_TOP/build/soong/soong_ui.bash \ + --dumpvars-mode --vars="TARGET_FLATTEN_APEX PRODUCT_COMPRESSED_APEX")" +# Assign to a variable and eval that, since bash ignores any error status from +# the command substitution if it's directly on the eval line. +eval $vars # Switch the build system to unbundled mode in the reduced manifest branch. if [ ! -d $ANDROID_BUILD_TOP/frameworks/base ]; then @@ -55,7 +55,7 @@ if [ ! -d $ANDROID_BUILD_TOP/frameworks/base ]; then fi have_deapexer_p=false -if $flattened_apex_p; then :; else +if [[ "$TARGET_FLATTEN_APEX" != true ]]; then if [ ! -e "$ANDROID_HOST_OUT/bin/deapexer" -o ! -e "$ANDROID_HOST_OUT/bin/debugfs_static" ] ; then say "Could not find deapexer and/or debugfs_static, building now." build/soong/soong_ui.bash --make-mode deapexer debugfs_static-host || \ @@ -82,12 +82,14 @@ applicable APEXes if none is given on the command line. -l, --list-files list the contents of the ext4 image (\`find\`-like style) -t, --print-tree list the contents of the ext4 image (\`tree\`-like style) -s, --print-sizes print the size in bytes of each file when listing contents + --bitness=32|64|multilib|auto passed on to art_apex_test.py -h, --help display this help and exit EOF exit } +global_art_apex_test_args="" apex_modules=() while [[ $# -gt 0 ]]; do @@ -96,6 +98,7 @@ while [[ $# -gt 0 ]]; do (-l|--list-files) list_image_files_p=true;; (-t|--print-tree) print_image_tree_p=true;; (-s|--print-sizes) print_file_sizes_p=true;; + (--bitness=*) global_art_apex_test_args="$global_art_apex_test_args $1";; (-h|--help) usage;; (-*) die "Unknown option: '$1' Try '$0 --help' for more information.";; @@ -174,19 +177,19 @@ for apex_module in ${apex_modules[@]}; do work_dir=$(mktemp -d) trap finish EXIT - art_apex_test_args="--tmpdir $work_dir" + art_apex_test_args="$global_art_apex_test_args --tmpdir $work_dir" test_only_args="" if [[ $apex_module = *.host ]]; then apex_path="$ANDROID_HOST_OUT/apex/${apex_module}.zipapex" art_apex_test_args="$art_apex_test_args --host" test_only_args="--flavor debug" else - if $flattened_apex_p; then + if [[ "$TARGET_FLATTEN_APEX" = true ]]; then apex_path="$ANDROID_PRODUCT_OUT/system/apex/${apex_module}" art_apex_test_args="$art_apex_test_args --flattened" else # Note: The Testing ART APEX is never built as a Compressed APEX. - if $compressed_apex_p && [[ $apex_module != *.testing ]]; then + if [[ "$PRODUCT_COMPRESSED_APEX" = true && $apex_module != *.testing ]]; then apex_path="$ANDROID_PRODUCT_OUT/system/apex/${apex_module}.capex" else apex_path="$ANDROID_PRODUCT_OUT/system/apex/${apex_module}.apex" |