Merge "Convert abi warnings to errors."

This commit is contained in:
Jayant Chowdhary
2017-11-02 16:44:56 +00:00
committed by Gerrit Code Review

View File

@@ -36,6 +36,14 @@ const (
staticLibraryExtension = ".a" staticLibraryExtension = ".a"
) )
var (
abiCheckAllowFlags = []string{
"-allow-extensions",
"-allow-unreferenced-changes",
"-allow-unreferenced-elf-symbol-changes",
}
)
var ( var (
pctx = android.NewPackageContext("android/soong/cc") pctx = android.NewPackageContext("android/soong/cc")
@@ -191,10 +199,10 @@ var (
// Abidiff check turned on in advice-only mode. Builds will not fail on abi incompatibilties / extensions. // Abidiff check turned on in advice-only mode. Builds will not fail on abi incompatibilties / extensions.
sAbiDiff = pctx.AndroidStaticRule("sAbiDiff", sAbiDiff = pctx.AndroidStaticRule("sAbiDiff",
blueprint.RuleParams{ blueprint.RuleParams{
Command: "$sAbiDiffer -lib $libName -arch $arch -advice-only -check-all-apis -o ${out} -new $in -old $referenceDump", Command: "$sAbiDiffer $allowFlags -lib $libName -arch $arch -check-all-apis -o ${out} -new $in -old $referenceDump",
CommandDeps: []string{"$sAbiDiffer"}, CommandDeps: []string{"$sAbiDiffer"},
}, },
"referenceDump", "libName", "arch") "allowFlags", "referenceDump", "libName", "arch")
unzipRefSAbiDump = pctx.AndroidStaticRule("unzipRefSAbiDump", unzipRefSAbiDump = pctx.AndroidStaticRule("unzipRefSAbiDump",
blueprint.RuleParams{ blueprint.RuleParams{
@@ -709,6 +717,7 @@ func SourceAbiDiff(ctx android.ModuleContext, inputDump android.Path, referenceD
"referenceDump": referenceDump.String(), "referenceDump": referenceDump.String(),
"libName": baseName, "libName": baseName,
"arch": ctx.Arch().ArchType.Name, "arch": ctx.Arch().ArchType.Name,
"allowFlags": strings.Join(abiCheckAllowFlags, " "),
}, },
}) })
return android.OptionalPathForPath(outputFile) return android.OptionalPathForPath(outputFile)