commit | 05ce70ddf4827f87070163d85e50695908625778 | [log] [tgz] |
---|---|---|
author | Luca Stefani <luca020400@lineageos.org> | Thu Aug 17 21:21:23 2017 +0200 |
committer | LuK1337 <priv.luk@gmail.com> | Sat Oct 19 00:16:01 2024 +0200 |
tree | eea704b946671215150b2c3b7c8915a4a1b2b37f | |
parent | 635935f4100e6e877e291cf92579eff1aef70308 [diff] |
build: Add Lineage build support Squashed also with the following changes: Author: Luca Stefani <luca020400@lineageos.org> Date: Thu Aug 17 22:22:13 2017 +0200 core: Include Lineage pathmap Change-Id: Ie25dee383cc5bc9bb6390cff2cb2460d526d80b6 Author: Simon Shields <simon@lineageos.org> Date: Fri Mar 2 12:55:47 2018 +1100 build: unconditionally use lineage pathmap even if we're not building a lineage target, we need to use the lineage pathmap to make things like recovery and ril happy Change-Id: I974c30ad10d4ff5b7805c3df9c22010f1e002bf1 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Tue Jan 22 15:50:52 2019 +0100 Don't export BUILD_NUMBER in envsetup * The value is meant to be set only before running an /official/ build * This allows us to execute consecutive make commands without running kati for every invocation Change-Id: Ifa94b839f30c7260009c8a3c91c202b50e28022e Author: Luca Stefani <luca020400@lineageos.org> Date: Fri Aug 18 10:17:00 2017 +0200 envsetup: Call fixup_common_out_dir Change-Id: I84e16b0df5822cfd8514c46d709109a13c20f86e Author: Adrian DC <radian.dc@gmail.com> Date: Sat May 12 11:24:33 2018 +0200 build: Include LineageOS specific properties in build.prop * Our properties were supposed to go to /system/etc/prop.default after the following commit: "lineage: Move to Google's method of defining system default props" Change-Id: I6cb0e28a7599b010b389cc541015a37010a00f4b * However if BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED is not true, only /default.prop will retain the properties contents of ADDITIONAL_DEFAULT_PROPERTIES and PRODUCT_SYSTEM_DEFAULT_PROPERTIES, and none of our versioning identification was held in the system * Enabling BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED globally would break all properties on devices that handle partitions usually at the device level rather than the kernel due to mounting races * Include the vendor/lineage/config/main.mk entrypoint to be allowed to extend ADDITION_BUILD_PROPERTIES as we need to define our releases Change-Id: I19918eece0f0dd3ee967db0339b4d09c9a6d540e Signed-off-by: Adrian DC <radian.dc@gmail.com> Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Thu Sep 5 21:35:38 2019 -0700 core: Only include Lineage SE policy if repo exists Change-Id: If799106d2da6d8c303430e316edff365a22f7c99 Author: dianlujitao <dianlujitao@lineageos.org> Date: Thu Sep 5 21:56:36 2019 +0800 product: Exclude AOSP apn list on Lineage build Change-Id: I1fd10089421a2e4b57ef565d87ad1f6036bd1898 Author: Michael Bestas <mkbestas@lineageos.org> Date: Fri Apr 12 02:10:12 2019 +0300 build: Conditionally include AudioPackage14.mk instead of AllAudio.mk * AllAudio.mk doesn't contain latest material files and also contains multiple duplicate files. Just copy the latest material ones and we'll include the older files in vendor/lineage Change-Id: Ic7353216a3f3dc3c51006d951ac932cfd6e5f3b5 Author: dhacker29 <dhackerdvm@gmail.com> Date: Sat Jun 6 22:22:05 2015 -0400 Remove LatinIME as it is included per target in vendor/lineage Change-Id: Ibce4a244ec0653a7c7798d864047ac667866a1dc Author: razorloves <razorloves@gmail.com> Date: Mon Oct 7 05:10:56 2019 -0500 build: Remove su inclusion This stops including su in all lineage userdebug/eng builds. Inclusion of su is conditionally handled in /vendor/lineage. Change-Id: Ia3ad978146f170a2b260d77afe9eb580d4b4f823 Author: Michael Bestas <mkbestas@lineageos.org> Date: Sat Nov 7 22:45:12 2020 +0200 Stop including vendor specific clear_vars.mk vendor/lineage/build/core/clear_vars.mk is no-op since 16.0 Change-Id: I7e159cc9ed5a838c9a04c1a8b7dcf925d83f0e20 Change-Id: Iab8b2ef8b644a7bea10bfd28b99d9e69539b1357
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.