This commit strips LOCAL_CHECK_ELF_FILES before comparing it with
`false` so that developers can add comments after LOCAL_CHECK_ELF_FILES.
For example:
LOCAL_CHECK_ELF_FILES := false # disable checks due to ...
Bug: 119084334
Test: Add some spaces after LOCAL_CHECK_ELF_FILES and run
CHECK_ELF_FILES=true make check-elf-files
Change-Id: I2bfaff4807aeeea6c7af0b9d7d716742b6764cd0
This commit introduces a prebuilt ELF binaries checker. The checker
will check:
1. Whether all DT_NEEDED shared libraries are specified in
`shared_libs` (Android.bp) or `LOCAL_SHARED_LIBRARIES` (Android.mk).
2. Whether all undefined symbols in the prebuilt binary can be resolved
to defined symbols exported by its dependencies.
This ensures that prebuilt binaries won't silently become ABI
incompatible.
To check the prebuilt binaries, all of the dependencies must be
specified in `shared_libs` (Android.bp) or `LOCAL_SHARED_LIBRARIES`
(Android.mk).
If your prebuilt binaries cannot be checked for some reason, you may add
the following property to Android.bp:
check_elf_files: false,
Or, add the following setting to Android.mk:
LOCAL_CHECK_ELF_FILES := false
Bug: 119084334
Test: CHECK_ELF_FILES=true make check-elf-files
Change-Id: I523d3083f22fd4053c096d26f61f8375800281c8