Disable CFI for vendor variants of VNDK libraries
Enabling CFI changes the VNDK ABI from the frozen snapshot, so the
only solution for now is to temporarily disable CFI on all vendor
variants for the sake of compatibility.
Bug: 66301104
Test: ABI is consistent.
Change-Id: Ie7dca41e0f647808b08adede09a30f3c746e6bda
diff --git a/cc/sanitize.go b/cc/sanitize.go
index fc44eaf..205b2a2 100644
--- a/cc/sanitize.go
+++ b/cc/sanitize.go
@@ -256,6 +256,13 @@
s.Diag.Cfi = nil
}
+ // Also disable CFI for VNDK variants of components in the
+ // include paths
+ if ctx.isVndk() && ctx.useVndk() && ctx.Config().CFIEnabledForPath(ctx.ModuleDir()) {
+ s.Cfi = nil
+ s.Diag.Cfi = nil
+ }
+
if ctx.staticBinary() {
s.Address = nil
s.Coverage = nil