Add header-abi-linker dependency on so file.
Whenever a symbol file is not available, header-abi-linker can look at the symbols with STV_DEFAULT or STV_PROTECTED visibility for further abi filtering. Bug: 62463617 Bug: 62307940 Test: make -j64 Change-Id: I5dc618be104a49d47375d37cf78c4490b1529987
This commit is contained in:
@@ -170,12 +170,12 @@ var (
|
||||
|
||||
sAbiLink = pctx.AndroidStaticRule("sAbiLink",
|
||||
blueprint.RuleParams{
|
||||
Command: "$sAbiLinker -o ${out} $symbolFile -arch $arch -api $api $exportedHeaderFlags @${out}.rsp ",
|
||||
Command: "$sAbiLinker -o ${out} $symbolFilter -arch $arch -api $api $exportedHeaderFlags @${out}.rsp ",
|
||||
CommandDeps: []string{"$sAbiLinker"},
|
||||
Rspfile: "${out}.rsp",
|
||||
RspfileContent: "${in}",
|
||||
},
|
||||
"symbolFile", "arch", "api", "exportedHeaderFlags")
|
||||
"symbolFilter", "arch", "api", "exportedHeaderFlags")
|
||||
|
||||
_ = pctx.SourcePathVariable("sAbiDiffer", "prebuilts/build-tools/${config.HostPrebuiltTag}/bin/header-abi-diff")
|
||||
|
||||
@@ -634,14 +634,17 @@ func TransformObjToDynamicBinary(ctx android.ModuleContext,
|
||||
|
||||
// Generate a rule to combine .dump sAbi dump files from multiple source files
|
||||
// into a single .ldump sAbi dump file
|
||||
func TransformDumpToLinkedDump(ctx android.ModuleContext, sAbiDumps android.Paths,
|
||||
func TransformDumpToLinkedDump(ctx android.ModuleContext, sAbiDumps android.Paths, soFile android.Path,
|
||||
symbolFile android.OptionalPath, apiLevel, baseName, exportedHeaderFlags string) android.OptionalPath {
|
||||
outputFile := android.PathForModuleOut(ctx, baseName+".lsdump")
|
||||
var symbolFileStr string
|
||||
var symbolFilterStr string
|
||||
var linkedDumpDep android.Path
|
||||
if symbolFile.Valid() {
|
||||
symbolFileStr = "-v " + symbolFile.Path().String()
|
||||
symbolFilterStr = "-v " + symbolFile.Path().String()
|
||||
linkedDumpDep = symbolFile.Path()
|
||||
} else {
|
||||
linkedDumpDep = soFile
|
||||
symbolFilterStr = "-so " + soFile.String()
|
||||
}
|
||||
ctx.ModuleBuild(pctx, android.ModuleBuildParams{
|
||||
Rule: sAbiLink,
|
||||
@@ -650,9 +653,9 @@ func TransformDumpToLinkedDump(ctx android.ModuleContext, sAbiDumps android.Path
|
||||
Inputs: sAbiDumps,
|
||||
Implicit: linkedDumpDep,
|
||||
Args: map[string]string{
|
||||
"symbolFile": symbolFileStr,
|
||||
"arch": ctx.Arch().ArchType.Name,
|
||||
"api": apiLevel,
|
||||
"symbolFilter": symbolFilterStr,
|
||||
"arch": ctx.Arch().ArchType.Name,
|
||||
"api": apiLevel,
|
||||
"exportedHeaderFlags": exportedHeaderFlags,
|
||||
},
|
||||
})
|
||||
|
Reference in New Issue
Block a user