No description
Find a file
Zhi Dou 3dea629a9e aconfig: cache flag value in generated java code
This change add cache in generated jave code to improve the performance.

The cache is a DeviceConfig.Properties. One Properties contains all
flag values from the given namesapce.

The Properties for a given namespace is initialized as null, and the
first call for any flags in that Properties will trigger the call to
fetch all the values. After the first call, the flag values are stored
in the Properties, so the following calls will directly get the value
from the Properties instead from the backup storage.

Test: atest aconfig.test.java
Bug: 307511846
Change-Id: Ic43626101c28099199b6faa419cf1945bd53b15d
2023-10-27 23:53:09 +00:00
common Fix BOARD_SYSTEMSDK_VERSIONS checks 2021-11-10 00:34:17 +00:00
core Merge "De-duplicate kernel module names" into main 2023-10-26 19:02:38 +00:00
packaging Trace time spent in cp rules for dist targets. 2023-06-26 23:31:30 +00:00
target Merge "Remove emulator_x86_arm board from common boards" into main 2023-10-27 22:36:11 +00:00
tests Add test for b failing 2023-07-05 12:26:55 -07:00
tools aconfig: cache flag value in generated java code 2023-10-27 23:53:09 +00:00
.gitignore ignore .iml files (IntelliJ) 2022-06-17 12:17:53 -04:00
banchanHelp.sh Allow selecting a different product in banchan. 2021-04-19 18:32:00 +01:00
buildspec.mk.default Add TARGET_PLATFORM_VERSION to lunch 2017-03-23 09:44:08 -07:00
Changes.md Revert^2 "Enable genrule sandboxing by default" 2023-10-18 22:50:28 +00:00
CleanSpec.mk Clean out old rustc compiler intermediates 2023-10-03 10:35:32 -07:00
cogsetup.sh Copy reclient binaries into the out directory itself 2023-09-28 17:46:59 +00:00
Deprecation.md Obsolete unused module types 2020-04-18 21:00:18 -07:00
envsetup.sh Fix tapas for git_main builds 2023-10-26 18:38:35 +00:00
help.sh Add sync to m help 2022-09-22 02:26:10 +00:00
METADATA Move comment to license_note 2022-03-03 14:57:46 -08:00
navbar.md Mark envsetup.sh vars as deprecated in makefiles 2017-11-28 14:19:50 -08:00
OWNERS Remove OWNERS access for non-build team people to core build system 2023-02-28 10:52:10 -08:00
PREUPLOAD.cfg Disallow use of error-prone merge-strategies 2021-02-23 15:07:02 +00:00
rbesetup.sh Update rbesetup.sh script to no longer set certain env variables 2022-05-27 11:31:45 -04:00
README.md Mark envsetup.sh vars as deprecated in makefiles 2017-11-28 14:19:50 -08:00
shell_utils.sh Pull common methods into shell_utils.sh, which can be included by scripts. 2023-01-03 14:12:43 -08:00
tapasHelp.sh Add a keys argument to tapas 2022-02-07 18:50:22 +00:00
Usage.txt Remove the PRODUCT-* goal 2019-07-29 14:27:04 -07:00

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.