summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Yu Liu <yudiliu@google.com> 2022-12-02 16:23:21 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2022-12-02 16:23:21 +0000
commit3f32b38cfb6ce44dc26e3d9bac9c219c49aa95b5 (patch)
treeb67ef27fefdd83f0b990b7b0f4ea98dfa2280151
parentde47ec777fe74535e53f319ba81d8646f4817bb4 (diff)
parent24214aacc2530e6286ceb200ebf620f1bb3b74a9 (diff)
Merge "Support abi check in mixed build."
-rw-r--r--bazel/cquery/request_type.go7
-rw-r--r--cc/library.go4
2 files changed, 11 insertions, 0 deletions
diff --git a/bazel/cquery/request_type.go b/bazel/cquery/request_type.go
index e4830d39d..118a3a907 100644
--- a/bazel/cquery/request_type.go
+++ b/bazel/cquery/request_type.go
@@ -33,6 +33,7 @@ type CcInfo struct {
TidyFiles []string
TocFile string
UnstrippedOutput string
+ AbiDiffFiles []string
}
type getOutputFilesRequestType struct{}
@@ -174,6 +175,11 @@ clang_tidy_info = p.get("//build/bazel/rules/cc:clang_tidy.bzl%ClangTidyInfo")
if clang_tidy_info:
tidy_files = [v.path for v in clang_tidy_info.tidy_files.to_list()]
+abi_diff_files = []
+abi_diff_info = p.get("//build/bazel/rules/abi:abi_dump.bzl%AbiDiffInfo")
+if abi_diff_info:
+ abi_diff_files = [f.path for f in abi_diff_info.diff_files.to_list()]
+
return json_encode({
"OutputFiles": outputFiles,
"CcObjectFiles": ccObjectFiles,
@@ -187,6 +193,7 @@ return json_encode({
"TidyFiles": tidy_files,
"TocFile": toc_file,
"UnstrippedOutput": unstripped,
+ "AbiDiffFiles": abi_diff_files,
})`
}
diff --git a/cc/library.go b/cc/library.go
index 6ba01eb5f..d1d19452f 100644
--- a/cc/library.go
+++ b/cc/library.go
@@ -905,6 +905,10 @@ func (handler *ccLibraryBazelHandler) generateSharedBazelBuildActions(ctx androi
}
handler.module.linker.(*libraryDecorator).tocFile = tocFile
+ if len(ccInfo.AbiDiffFiles) > 0 {
+ handler.module.linker.(*libraryDecorator).sAbiDiff = android.PathsForBazelOut(ctx, ccInfo.AbiDiffFiles)
+ }
+
ctx.SetProvider(SharedLibraryInfoProvider, SharedLibraryInfo{
TableOfContents: tocFile,
SharedLibrary: outputFilePath,