aboutsummaryrefslogtreecommitdiff
path: root/tools/check_identical_lib.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tools/check_identical_lib.sh')
-rwxr-xr-xtools/check_identical_lib.sh16
1 files changed, 14 insertions, 2 deletions
diff --git a/tools/check_identical_lib.sh b/tools/check_identical_lib.sh
index c3aa41a722..c9f436f0bb 100755
--- a/tools/check_identical_lib.sh
+++ b/tools/check_identical_lib.sh
@@ -26,7 +26,19 @@ function strip_lib() {
strip_lib ${CORE} ${stripped_core}
strip_lib ${VENDOR} ${stripped_vendor}
if ! cmp -s ${stripped_core} ${stripped_vendor}; then
- echo "VNDK library not in vndkMustUseVendorVariantList but has different core and vendor variant: $(basename ${CORE})"
- echo "If the two variants need to have different runtime behavior, consider using libvndksupport."
+ echo "ERROR: VNDK library $(basename ${CORE%.so}) has different core and" \
+ "vendor variants! This means that the copy used in the system.img/etc" \
+ "and vendor.img/etc images are different. In order to preserve space on" \
+ "some devices, it is helpful if they are the same. Frequently, " \
+ "libraries are different because they or their dependencies compile" \
+ "things based on the macro '__ANDROID_VNDK__' or they specify custom" \
+ "options under 'target: { vendor: { ... } }'. Here are some possible" \
+ "resolutions:"
+ echo "ERROR: 1). Remove differences, possibly using the libvndksupport" \
+ "function android_is_in_vendor_process in order to turn this into a" \
+ "runtime difference."
+ echo "ERROR: 2). Add the library to the VndkMustUseVendorVariantList" \
+ "variable in build/soong/cc/config/vndk.go, which is used to" \
+ "acknowledge this difference."
exit 1
fi