Let header-abi-linker filter symbols by API level
In a trunk stable branch, the ABI-monitored libraries under different release configurations share the source code. The exported symbols are filtered by version scripts and API level. header-abi-linker needs to take the API level as a parameter. Test: make Bug: 308192597 Change-Id: I4b55b7ec023451b3a4cd1da308a1de10842d51d2
This commit is contained in:
@@ -1904,17 +1904,19 @@ func (library *libraryDecorator) linkSAbiDumpFiles(ctx ModuleContext, objs Objec
|
||||
}
|
||||
exportedHeaderFlags := strings.Join(SourceAbiFlags, " ")
|
||||
headerAbiChecker := library.getHeaderAbiCheckerProperties(ctx)
|
||||
library.sAbiOutputFile = transformDumpToLinkedDump(ctx, objs.sAbiDumpFiles, soFile, fileName, exportedHeaderFlags,
|
||||
android.OptionalPathForModuleSrc(ctx, library.symbolFileForAbiCheck(ctx)),
|
||||
headerAbiChecker.Exclude_symbol_versions,
|
||||
headerAbiChecker.Exclude_symbol_tags)
|
||||
|
||||
addLsdumpPath(classifySourceAbiDump(ctx) + ":" + library.sAbiOutputFile.String())
|
||||
|
||||
// The logic must be consistent with classifySourceAbiDump.
|
||||
isVndk := ctx.useVndk() && ctx.isVndk()
|
||||
isNdk := ctx.isNdk(ctx.Config())
|
||||
isLlndk := ctx.isImplementationForLLNDKPublic()
|
||||
currVersion := currRefAbiDumpVersion(ctx, isVndk)
|
||||
library.sAbiOutputFile = transformDumpToLinkedDump(ctx, objs.sAbiDumpFiles, soFile, fileName, exportedHeaderFlags,
|
||||
android.OptionalPathForModuleSrc(ctx, library.symbolFileForAbiCheck(ctx)),
|
||||
headerAbiChecker.Exclude_symbol_versions,
|
||||
headerAbiChecker.Exclude_symbol_tags,
|
||||
currVersion)
|
||||
|
||||
addLsdumpPath(classifySourceAbiDump(ctx) + ":" + library.sAbiOutputFile.String())
|
||||
|
||||
dumpDir := getRefAbiDumpDir(isNdk, isVndk)
|
||||
binderBitness := ctx.DeviceConfig().BinderBitness()
|
||||
// If NDK or PLATFORM library, check against previous version ABI.
|
||||
@@ -1930,7 +1932,6 @@ func (library *libraryDecorator) linkSAbiDumpFiles(ctx ModuleContext, objs Objec
|
||||
}
|
||||
}
|
||||
// Check against the current version.
|
||||
currVersion := currRefAbiDumpVersion(ctx, isVndk)
|
||||
currDumpDir := filepath.Join(dumpDir, currVersion, binderBitness)
|
||||
currDumpFile := getRefAbiDumpFile(ctx, currDumpDir, fileName)
|
||||
if currDumpFile.Valid() {
|
||||
|
Reference in New Issue
Block a user