Let header-abi-linker filter llndk, apex, and systemapi symbols
This commit adds --include-symbol-tag and --symbol-tag-policy to header-abi-linker commands. The arguments make header-abi-linker load the symbols tagged with llndk/apex/systemapi from the version script. It filters the function declarations by the symbols. The output dumps will not contain unfinalized ABI. Test: make findlsdumps Bug: 333532038 Change-Id: I28234a3749f389b8a5a09ac84341b1fcd1ee88a6
This commit is contained in:
@@ -855,8 +855,8 @@ func transformObjToDynamicBinary(ctx android.ModuleContext,
|
||||
// into a single .ldump sAbi dump file
|
||||
func transformDumpToLinkedDump(ctx android.ModuleContext, sAbiDumps android.Paths, soFile android.Path,
|
||||
baseName string, exportedIncludeDirs []string, symbolFile android.OptionalPath,
|
||||
excludedSymbolVersions, excludedSymbolTags []string,
|
||||
api string) android.Path {
|
||||
excludedSymbolVersions, excludedSymbolTags, includedSymbolTags []string,
|
||||
api string, isLlndk bool) android.Path {
|
||||
|
||||
outputFile := android.PathForModuleOut(ctx, baseName+".lsdump")
|
||||
|
||||
@@ -874,6 +874,12 @@ func transformDumpToLinkedDump(ctx android.ModuleContext, sAbiDumps android.Path
|
||||
for _, tag := range excludedSymbolTags {
|
||||
symbolFilterStr += " --exclude-symbol-tag " + tag
|
||||
}
|
||||
for _, tag := range includedSymbolTags {
|
||||
symbolFilterStr += " --include-symbol-tag " + tag
|
||||
}
|
||||
if isLlndk {
|
||||
symbolFilterStr += " --symbol-tag-policy MatchTagOnly"
|
||||
}
|
||||
apiLevelsJson := android.GetApiLevelsJson(ctx)
|
||||
implicits = append(implicits, apiLevelsJson)
|
||||
symbolFilterStr += " --api-map " + apiLevelsJson.String()
|
||||
|
Reference in New Issue
Block a user