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.
Following our recent presentation at OSSummit, many showed interest in learning more about solving real-world problems with computer vision.…
Recent work in Weston, the industry-standard Wayland compositor, has enabled DRM/KMS backends to be tested in the absence of real hardware,…
Initcalls, which serve to call functions during boot, were implemented early on in the development of the Linux Kernel. Read on as we take…
Earlier this year, we announced a new project with Microsoft: the implementation of OpenCL & OpenGL to DirectX translation layers. Here's…
Syzkaller is much needed tool for Linux kernel testing and debugging. With some work, it can also be enhanced to find bugs in specific drivers,…
Previously, we discussed about how Rust can be a great language for embedded programming. In this article, we'll explain an easy setup to…