summaryrefslogtreecommitdiff
path: root/build/apex/runtests.sh
diff options
context:
space:
mode:
Diffstat (limited to 'build/apex/runtests.sh')
-rwxr-xr-xbuild/apex/runtests.sh29
1 files changed, 22 insertions, 7 deletions
diff --git a/build/apex/runtests.sh b/build/apex/runtests.sh
index a452fe619a..cdbb7c0645 100755
--- a/build/apex/runtests.sh
+++ b/build/apex/runtests.sh
@@ -59,14 +59,27 @@ if [ ! -d $ANDROID_BUILD_TOP/frameworks/base ]; then
export TARGET_BUILD_UNBUNDLED=true
fi
-have_deapexer_p=false
+deapex_binaries=(
+ blkid_static
+ deapexer
+ debugfs_static
+ fsck.erofs
+)
+
+have_deapex_binaries=false
if [[ "$TARGET_FLATTEN_APEX" != true ]]; then
- if [ ! -e "$HOST_OUT/bin/deapexer" -o ! -e "$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 || \
- die "Cannot build deapexer and debugfs_static"
+ have_deapex_binaries=true
+ for f in ${deapex_binaries[@]}; do
+ if [ ! -e "$HOST_OUT/bin/$f" ]; then
+ have_deapex_binaries=false
+ fi
+ done
+ if $have_deapex_binaries; then :; else
+ deapex_targets=( ${deapex_binaries[@]/%/-host} )
+ say "Building host binaries for deapexer: ${deapex_targets[*]}"
+ build/soong/soong_ui.bash --make-mode ${deapex_targets[@]} || \
+ die "Failed to build: ${deapex_targets[*]}"
fi
- have_deapexer_p=true
fi
# Fail early.
@@ -203,9 +216,11 @@ for apex_module in ${apex_modules[@]}; do
apex_path="$PRODUCT_OUT/system/apex/${apex_module}.apex"
fi
fi
- if $have_deapexer_p; then
+ if $have_deapex_binaries; then
art_apex_test_args="$art_apex_test_args --deapexer $HOST_OUT/bin/deapexer"
art_apex_test_args="$art_apex_test_args --debugfs $HOST_OUT/bin/debugfs_static"
+ art_apex_test_args="$art_apex_test_args --fsckerofs $HOST_OUT/bin/fsck.erofs"
+ art_apex_test_args="$art_apex_test_args --blkid $HOST_OUT/bin/blkid_static"
fi
case $apex_module in
(*.debug) test_only_args="--flavor debug";;