diff --git a/cc/builder.go b/cc/builder.go index fcc431816..1e1c4f23a 100644 --- a/cc/builder.go +++ b/cc/builder.go @@ -711,8 +711,12 @@ func UnzipRefDump(ctx android.ModuleContext, zippedRefDump android.Path, baseNam } func SourceAbiDiff(ctx android.ModuleContext, inputDump android.Path, referenceDump android.Path, - baseName string) android.OptionalPath { + baseName, exportedHeaderFlags string) android.OptionalPath { outputFile := android.PathForModuleOut(ctx, baseName+".abidiff") + localAbiCheckAllowFlags := append([]string(nil), abiCheckAllowFlags...) + if exportedHeaderFlags == "" { + localAbiCheckAllowFlags = append(localAbiCheckAllowFlags, "-advice-only") + } ctx.Build(pctx, android.BuildParams{ Rule: sAbiDiff, Description: "header-abi-diff " + outputFile.Base(), @@ -723,7 +727,7 @@ func SourceAbiDiff(ctx android.ModuleContext, inputDump android.Path, referenceD "referenceDump": referenceDump.String(), "libName": baseName, "arch": ctx.Arch().ArchType.Name, - "allowFlags": strings.Join(abiCheckAllowFlags, " "), + "allowFlags": strings.Join(localAbiCheckAllowFlags, " "), }, }) return android.OptionalPathForPath(outputFile) diff --git a/cc/library.go b/cc/library.go index adbd6b529..0ed18486a 100644 --- a/cc/library.go +++ b/cc/library.go @@ -632,7 +632,7 @@ func (library *libraryDecorator) linkSAbiDumpFiles(ctx ModuleContext, objs Objec library.sAbiOutputFile = TransformDumpToLinkedDump(ctx, objs.sAbiDumpFiles, soFile, fileName, exportedHeaderFlags) if refSourceDumpFile.Valid() { unzippedRefDump := UnzipRefDump(ctx, refSourceDumpFile.Path(), fileName) - library.sAbiDiff = SourceAbiDiff(ctx, library.sAbiOutputFile.Path(), unzippedRefDump, fileName) + library.sAbiDiff = SourceAbiDiff(ctx, library.sAbiOutputFile.Path(), unzippedRefDump, fileName, exportedHeaderFlags) } } }