Products launching with API 28 needs system-as-root
With project Treble, it's possible to only update system.img across Android major releases without changing other partitions. However, for non-A/B devices, ramdisk cannot be updated via a system-only OTA because it resides in /boot partition. This leads to two major incompatibility issues: - The older /init in ramdisk might not be able to parse the *.rc files on /system. - The ramdisk contains /init.rc, which also may be out of date compared to what is required for the new /system. Therefore, for new devices launched in P with full Treble support, ramdisk should be merged into system.img by setting BOARD_BUILD_SYSTEM_ROOT_IMAGE := True. Upgrading devices can keep using non-system-as-root configuration. Bug: 64194858 Test: manual makefile prodding Change-Id: Ic04c63bd2aac3afa686a6f5cb124beebbcd6a5ee
This commit is contained in:
parent
3cf75cf2bb
commit
ed3b1ca12c
|
@ -843,6 +843,11 @@ ifdef PRODUCT_SHIPPING_API_LEVEL
|
|||
$(error When PRODUCT_SHIPPING_API_LEVEL >= 28, TARGET_USES_64_BIT_BINDER must be true)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(PRODUCT_FULL_TREBLE),true)
|
||||
ifneq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true)
|
||||
$(error When PRODUCT_SHIPPING_API_LEVEL >= 28, BOARD_BUILD_SYSTEM_ROOT_IMAGE must be true)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
|
|
Loading…
Reference in New Issue