Ban ELF prebuilts in PRODUCT_COPY_FILES
ELF prebuilts in PRODUCT_COPY_FILES are an build error. Define prebuilt modules and add them to PRODUCT_PACKAGES instead. To triage any build break caused by this change, temporarily opt out this check by setting BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true in BoardConfig.mk. Bug: 140560012 Test: build_test & verify that either PRODUCT_COPY_FILES has no ELF \ prebuilt or BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES is true Change-Id: I9dcbe7b68c38fc23dac91fe5751cbc478105656e
This commit is contained in:
13
Changes.md
13
Changes.md
@@ -1,5 +1,18 @@
|
|||||||
# Build System Changes for Android.mk Writers
|
# Build System Changes for Android.mk Writers
|
||||||
|
|
||||||
|
## ELF prebuilts in PRODUCT_COPY_FILES
|
||||||
|
|
||||||
|
ELF prebuilts in PRODUCT_COPY_FILES that are installed into these paths are an
|
||||||
|
error:
|
||||||
|
|
||||||
|
* `<partition>/bin/*`
|
||||||
|
* `<partition>/lib/*`
|
||||||
|
* `<partition>/lib64/*`
|
||||||
|
|
||||||
|
Define prebuilt modules and add them to PRODUCT_PACKAGES instead.
|
||||||
|
To temporarily relax this check and restore the behavior prior to this change,
|
||||||
|
set `BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true` in `BoardConfig.mk`.
|
||||||
|
|
||||||
## COPY_HEADERS usage now produces warnings {#copy_headers}
|
## COPY_HEADERS usage now produces warnings {#copy_headers}
|
||||||
|
|
||||||
We've considered `BUILD_COPY_HEADERS`/`LOCAL_COPY_HEADERS` to be deprecated for
|
We've considered `BUILD_COPY_HEADERS`/`LOCAL_COPY_HEADERS` to be deprecated for
|
||||||
|
@@ -40,11 +40,9 @@ $(if $(filter true,$(BUILD_BROKEN_VINTF_PRODUCT_COPY_FILES)),, \
|
|||||||
)
|
)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
# TODO(b/140560012): Flip BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES to default
|
|
||||||
# false after all problematic devices are tagged.
|
|
||||||
check_elf_prebuilt_product_copy_files :=
|
|
||||||
ifneq (,$(filter false,$(BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES)))
|
|
||||||
check_elf_prebuilt_product_copy_files := true
|
check_elf_prebuilt_product_copy_files := true
|
||||||
|
ifneq (,$(filter true,$(BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES)))
|
||||||
|
check_elf_prebuilt_product_copy_files :=
|
||||||
endif
|
endif
|
||||||
check_elf_prebuilt_product_copy_files_hint := \
|
check_elf_prebuilt_product_copy_files_hint := \
|
||||||
found ELF prebuilt in PRODUCT_COPY_FILES, use cc_prebuilt_binary / cc_prebuilt_library_shared instead.
|
found ELF prebuilt in PRODUCT_COPY_FILES, use cc_prebuilt_binary / cc_prebuilt_library_shared instead.
|
||||||
|
Reference in New Issue
Block a user