emulator: add check_emu_boot.mk, again

"make check_emu_boot" will boot up emulator
and check whether it boots up or timed out.
On boot success, it will emit a file
BOOT_SUCCESS.txt in dist_dir;
On timed out, it will emit a file
BOOT_FAIL.txt in dist_dir

original cl breaks some build, and this
fixes it by incorporating the following cl

https://android-review.googlesource.com/c/platform/build/+/576282

Test: choosecombo 1 aosp_arm64_ab userdebug
      m -j checkbuild tests

Test: make check_emu_boot
Change-Id: I09cba4f8fde672f9ea685dee1c0c108f2c457e2a
This commit is contained in:
bohu 2017-12-22 08:50:03 -08:00 committed by Bo Hu
parent 1d87b803f7
commit 93ac3b81eb
1 changed files with 23 additions and 0 deletions

View File

@ -0,0 +1,23 @@
check_emu_boot0 := $(DIST_DIR)/$(TARGET_PRODUCT)-$(TARGET_BUILD_VARIANT)-emulator-boot-test-result.txt
$(check_emu_boot0) : PRIVATE_PREFIX := $(TARGET_PRODUCT)-$(TARGET_BUILD_VARIANT)
$(check_emu_boot0) : PRIVATE_EMULATOR_BOOT_TEST_SH := device/generic/goldfish/tools/emulator_boot_test.sh
$(check_emu_boot0) : PRIVATE_BOOT_COMPLETE_STRING := "emulator: INFO: boot completed"
$(check_emu_boot0) : PRIVATE_BOOT_FAIL_STRING := "emulator: ERROR: fail to boot after"
$(check_emu_boot0) : PRIVATE_SUCCESS_FILE := $(DIST_DIR)/$(PRIVATE_PREFIX)-BOOT-SUCCESS.txt
$(check_emu_boot0) : PRIVATE_FAIL_FILE := $(DIST_DIR)/$(PRIVATE_PREFIX)-BOOT-FAIL.txt
$(check_emu_boot0) : $(INSTALLED_QEMU_SYSTEMIMAGE) $(INSTALLED_QEMU_VENDORIMAGE) \
$(if $(BOARD_USERDATAIMAGE_PARTITION_SIZE),$(PRODUCT_OUT)/userdata.img) \
$(PRODUCT_OUT)/ramdisk.img device/generic/goldfish/tools/emulator_boot_test.sh
@mkdir -p $(dir $(check_emu_boot0))
$(hide) rm -f $(check_emu_boot0)
$(hide) rm -f $(PRIVATE_SUCCESS_FILE)
$(hide) rm -f $(PRIVATE_FAIL_FILE)
(export ANDROID_PRODUCT_OUT=$$(cd $(PRODUCT_OUT);pwd);\
export ANDROID_BUILD_TOP=$$(pwd);\
$(PRIVATE_EMULATOR_BOOT_TEST_SH) > $(check_emu_boot0))
(if grep -q $(PRIVATE_BOOT_COMPLETE_STRING) $(check_emu_boot0);\
then echo boot_succeeded > $(PRIVATE_SUCCESS_FILE); fi)
(if grep -q $(PRIVATE_BOOT_FAIL_STRING) $(check_emu_boot0);\
then echo boot_failed > $(PRIVATE_FAIL_FILE); fi)
.PHONY: check_emu_boot
check_emu_boot: $(check_emu_boot0)