commit | 4cdafdeb6b29d76042cf483818cee724e8681efa | [log] [tgz] |
---|---|---|
author | Jiyong Park <jiyong@google.com> | Fri Dec 22 00:32:50 2017 +0900 |
committer | Jiyong Park <jiyong@google.com> | Fri Dec 22 00:32:50 2017 +0900 |
tree | 0670c9044839603ba5b7f5efc6c61f551c35884c | |
parent | 7f0e221942a3b79d47273b7ec670add25908f854 [diff] |
Don't install unnecessary VNDK libs vndk_package is a phony module that includes ALL VNDK libs found in the source code. As a result, VNDK libs that were actually not needed for the device have been installed consuming storage. For example, /system/lib/vndk/android.hardware.automotive*.so files were installed even though walleye/taimen do not have automotive HALs. VNDK libs are now installed by their link time dependencies (i.e. if a vendor module uses libcutils, then /system/lib[64]/vndk-sp/libcutils.so is automatically installed.). By the way, there is a few number of VNDK libs that do not have any link time dependency from vendor modules. They are always opened via dlopen. In such cases, the vndk modules are added to `required` or `LOCAL_REQUIRED_MODULES` of the module that dlopens them. Or, they are directly added to PRODUCT_PACKAGES of the base products so that they are always installed. Bug: 67002788 Test: walleye builds and boots to the UI Test: basic functionalities work (sound, camera, camcorder, slow-mo, youtube, wifi, bluetooth) Change-Id: I0eb36701858cd456ccb69dd0cf0a1880773675c7
This is the Makefile-based portion of the Android Build System.
For documentation on how to run a build, see Usage.txt
For a list of behavioral changes useful for Android.mk writers see Changes.md
For an outdated reference on Android.mk files, see build-system.html. Our Android.mk files look similar, but are entirely different from the Android.mk files used by the NDK build system. When searching for documentation elsewhere, ensure that it is for the platform build system -- most are not.
This Makefile-based system is in the process of being replaced with Soong, a new build system written in Go. During the transition, all of these makefiles are read by Kati, and generate a ninja file instead of being executed directly. That's combined with a ninja file read by Soong so that the build graph of the two systems can be combined and run as one.