No description
Find a file
Kelvin Zhang 2c561d8cb1 Create new target-files-dir target
Create a new phony target target-files-dir, which points to
$(BUILT_TARGET_FILES_DIR) . All dependencies of
BUILT_TARGET_FILES_PACKAGE are now a dependency of
BUILT_TARGET_FILES_DIR. The purpose of BUILT_TARGET_FILES_DIR is to
represent an unzipped version of the target_files.zip . Some tools, such
as ota_from_target_files, can work directly with unzipped target_files.
This change allows such tools to avoid having to zip the target_files
by depending on BUILT_TARGET_FILES_DIR instead of
BUILT_TARGET_FILES_PACKAGE.

This CL does not have any functional changes, targets such as otapackage
and updatepackage still depend on the zipped target_files.

Bug: 227848550
Bug: 277028723

Test: m installclean && m updatepackage
Change-Id: I83e69370ae5efa9046710f5909276077796f6b30
2023-04-20 21:08:06 -07:00
common Fix BOARD_SYSTEMSDK_VERSIONS checks 2021-11-10 00:34:17 +00:00
core Create new target-files-dir target 2023-04-20 21:08:06 -07:00
packaging Fix creating _dist_<goal> targets under !dist 2018-10-21 08:56:27 -07:00
target Merge "Include hwasan lib and runtime on arm64 system images" 2023-04-14 23:27:56 +00:00
tests Add a test for b builds with -- 2023-03-22 16:28:11 -07:00
tools Copy SBOM files of unbundled APKs to dist directory. 2023-04-18 15:57:34 -07: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 Add BUILD_BROKEN_USES_SOONG_PYTHON2_MODULES 2023-03-09 11:55:29 -08:00
CleanSpec.mk Make SOONG_HOST_OUT an alias for HOST_OUT 2021-11-18 16:26:58 -08:00
Deprecation.md Obsolete unused module types 2020-04-18 21:00:18 -07:00
envsetup.sh have sgrep search rust and go files too 2023-02-27 15:58:15 -08: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.