They've been warnings for two weeks, with no reports of problems, and no warnings in the logs that I can search. Fixes: 130723115 Fixes: 130734993 Test: treehugger Change-Id: I61b8b5f35905d45fa7cab9914580ae6c005e83dc
2.7 KiB
Deprecation of Make
We've made significant progress converting AOSP from Make to Soong (Android.mk to Android.bp), and we're ready to start turning off pieces of Make. If you have any problems converting, please contact us via:
- The android-building@googlegroups.com group.
- Our public bug tracker.
- Or privately through your existing contacts at Google.
Status
build/make/core/deprecation.mk is the source of truth, but for easy browsing:
| Module type | State |
|---|---|
BUILD_HOST_TEST_CONFIG |
Error |
BUILD_TARGET_TEST_CONFIG |
Error |
BUILD_* |
Available |
Module Type Deprecation Process
We'll be turning off BUILD_* module types as all of the users are removed
from AOSP (and Google's internal trees). The process will go something like
this, using BUILD_PACKAGE as an example:
- Prerequisite: all common users of
BUILD_PACKAGEhave been removed (some device-specific ones may remain). BUILD_PACKAGEwill be moved fromAVAILABLE_BUILD_MODULE_TYPEStoDEFAULT_WARNING_BUILD_MODULE_TYPESin build/make/core/deprecation.mk. This will make referring toBUILD_PACKAGEa warning.- Any devices that still have warnings will have
BUILD_BROKEN_USES_BUILD_PACKAGE := trueadded to theirBoardConfig.mk. BUILD_PACKAGEwill be switched fromDEFAULT_WARNING_BUILD_MODULE_TYPEStoDEFAULT_ERROR_BUILD_MODULE_TYPES, which will turn referring toBUILD_PACKAGEinto an error unless the device has overridden it.- At some later point, after all devices in AOSP no longer set
BUILD_BROKEN_USES_BUILD_PACKAGE,BUILD_PACKAGEwill be moved fromDEFAULT_ERROR_BUILD_MODULE_TYPEStoOBSOLETE_BUILD_MODULE_TYPESand the code will be removed. It will no longer be possible to useBUILD_PACKAGE.
In most cases, we expect module types to stay in the default warning state for
about two weeks before becoming an error by default. Then it will spend some
amount of time in the default error state before moving to obsolete -- we'll
try and keep that around for a while, but other development may cause those to
break, and the fix may to be to obsolete them. There is no expectation that the
BUILD_BROKEN_USES_BUILD_* workarounds will work in a future release, it's a
short-term workaround.
Just to be clear, the above process will happen on the AOSP master branch. So if you're following Android releases, none of the deprecation steps will be in Android Q, and the 2020 release will have jumped directly to the end for many module types.