Consider binder bitness while looking for abi references.
Binder bitness does not always correlate directly with primary arch, as
assumed earlier. For example: it is possible to have devices with
primary arch 'arm' and use 64 bit binder.
Bug: 74362434
Test: utils/create_reference_dumps.py;
m -j vndk_package for aosp_arm64_ab, aosp_arm_ab invokes
header-abi-diff on both arm and arm64 arches.
Test: mm -j64 in system/libhwbinder on troublesome internal target.
Change-Id: Iea0a24b57cdb3033e25b6fe126c5d5d717f45b4e
diff --git a/android/paths.go b/android/paths.go
index cf5544d..3605dcf 100644
--- a/android/paths.go
+++ b/android/paths.go
@@ -800,8 +800,8 @@
if len(arches) == 0 {
panic("device build with no primary arch")
}
- primary_arch := arches[0].ArchType.String()
- refDumpFileStr := "prebuilts/abi-dumps/" + vndkOrNdkDir + "/" + version + "/" + primary_arch + "/" +
+ binderBitness := ctx.DeviceConfig().BinderBitness()
+ refDumpFileStr := "prebuilts/abi-dumps/" + vndkOrNdkDir + "/" + version + "/" + binderBitness + "/" +
archNameAndVariant + "/" + sourceOrBinaryDir + "/" + fileName + ext
return ExistentPathForSource(ctx, refDumpFileStr)
}