Go to file
Ulya Trafimovich 558cb6c5ac Merge <uses-library> dependency configs into dexpreopt.config files.
Since Make does not visit modules in topological order of their
<uses-library> dependencies, information from dependencies to the
dexpreopted module has to be passed via dexpreopt.config files. A build
rule for a dexpreopt.config file depends on dexpreopt.config files for
<uses-library> dependencies, and dex_preopt_config_merger.py script
extracts the necessary information from dependency configs and patches
the module's config.

Bug: 132357300
Test: lunch aosp_cf_x86_phone-userdebug && m
Change-Id: Id0b71170a4d2ab1d33059de0e9ad9d7e61f2345e
2021-01-28 14:59:14 +00:00
common Add a rule to get numbers greater or equal to a minimum number. 2020-10-29 22:29:27 +00:00
core Merge <uses-library> dependency configs into dexpreopt.config files. 2021-01-28 14:59:14 +00:00
packaging Fix creating _dist_<goal> targets under !dist 2018-10-21 08:56:27 -07:00
target Merge "Revert "Do not set ro.iorapd.enable=true"" 2021-01-23 02:51:13 +00:00
tests Only set TARGET_PLATFORM version in lunch when explicitly requested 2017-05-01 14:26:40 -07:00
tools Add skeleton for product-config tool. 2021-01-21 12:38:04 -08:00
.gitignore Add build subprojects to .gitignore 2015-07-23 13:18:47 -07:00
Changes.md Require required modules to exist 2020-08-06 06:41:09 +00:00
CleanSpec.mk Add clean step to remove Soong's host copies of libconscrypt_openjdk_jni.so 2020-10-09 08:42:13 +00:00
Deprecation.md Obsolete unused module types 2020-04-18 21:00:18 -07:00
OWNERS Refactor OWNERS files in platform/build/make. 2020-10-08 16:14:44 -07:00
README.md Mark envsetup.sh vars as deprecated in makefiles 2017-11-28 14:19:50 -08:00
Usage.txt Remove the PRODUCT-* goal 2019-07-29 14:27:04 -07:00
buildspec.mk.default Add TARGET_PLATFORM_VERSION to lunch 2017-03-23 09:44:08 -07:00
envsetup.sh Pipe bazel() note text to stderr. 2020-12-14 18:51:50 -05:00
help.sh Revert "Add modules partition." 2020-09-15 19:09:26 +00:00
navbar.md Mark envsetup.sh vars as deprecated in makefiles 2017-11-28 14:19:50 -08:00
rbesetup.sh Switch default execution strategy to racing for developer builds 2020-11-25 12:14:16 -05:00
tapasHelp.sh Remove unused mips workarounds. 2020-03-06 16:46:59 -08:00

README.md

Android Make Build System

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.