February 23, 2017
By precompiling APK files during AOSP build a few minutes can be shaved off of the development iteration time on most commonly found Android hardware.
cd /opt/aosp_checkout/ find . -name BoardConfig.mk ./device/huawei/angler/BoardConfig.mk ./device/generic/mini-emulator-x86/BoardConfig.mk ./device/generic/arm64/BoardConfig.mk ./device/generic/mini-emulator-x86_64/BoardConfig.mk ./device/generic/mini-emulator-armv7-a-neon/BoardConfig.mk ./device/generic/mips/BoardConfig.mk ./device/generic/mips64/BoardConfig.mk ./device/generic/x86_64/BoardConfig.mk ./device/generic/mini-emulator-arm64/BoardConfig.mk ./device/generic/mini-emulator-mips/BoardConfig.mk ./device/generic/x86/BoardConfig.mk ./device/generic/armv7-a-neon/BoardConfig.mk ./device/generic/mini-emulator-mips64/BoardConfig.mk ./device/lge/bullhead/BoardConfig.mk ./device/linaro/generic/linaro_x86_64_only/BoardConfig.mk ./device/linaro/generic/linaro_arm64/BoardConfig.mk ./device/linaro/generic/linaro_arm64_only/BoardConfig.mk ./device/linaro/generic/linaro_x86_64/BoardConfig.mk ./device/linaro/generic/BoardConfig.mk ./device/linaro/generic/linaro_arm/BoardConfig.mk ./device/linaro/hikey/hikey/BoardConfig.mk # Edit the BoardConfig.mk that you are using for your build cd device/linaro/generic/ nano BoardConfig.mk # Add the config option WITH_DEXPREOPT := true # Propagate the new settings make defconfig make all
Depending on the previous system partition size and how many APKs that are built, you may need to increase the system partition size.
nano configs/defconfig # Change the below variable to something big enough to house all of you binaries CONFIG_BOARD_SYSTEMIMAGE_PARTITION_SIZE=1100000000 # Propagate the new settings make defconfig make all
This post has been a part of work undertaken by my employer Collabora.
With virtme, you can run a custom built kernel on top of our running root filesystem. In this post, we explore another example of virtme…
Introducing cmtp-responder - a permissively licensed Media Transfer Protocol (MTP) responder implementation which allows embedded devices…
Up until now, talking in-depth about userspace tracing was deliberately avoided because it merits special treatment, hence this part devoted…
After a successful team effort, the patch enabling the Chromium Embedded Framework (CEF) Ozone builds to run with different platform backends,…
Now that we've studied the mainstream way of developing and using eBPF programs on top of the low-level VM mechanisms, we'll look at projects…
A previous post introduced the SPURV Android compatibility layer for Wayland based Linux environment. In this post, we're going to dig into…