Clean up StarlarkFunctionBody for getCcInfoType

Instead of repeating, pull repetition into vars

Test: build/bazel/ci/mixed_{libc,droid}.sh
Change-Id: If3c8387ac0aeb6364e7e4bc58a4e3a39c3c708d5
This commit is contained in:
Alex Márquez Pérez Muñíz Díaz Púras Thaureaux
2021-09-14 21:04:34 +00:00
parent bc4e734e59
commit 4fbc62196d

View File

@@ -100,14 +100,15 @@ func (g getCcInfoType) Name() string {
func (g getCcInfoType) StarlarkFunctionBody() string { func (g getCcInfoType) StarlarkFunctionBody() string {
return ` return `
outputFiles = [f.path for f in target.files.to_list()] outputFiles = [f.path for f in target.files.to_list()]
cc_info = providers(target)["CcInfo"]
includes = providers(target)["CcInfo"].compilation_context.includes.to_list() includes = cc_info.compilation_context.includes.to_list()
system_includes = providers(target)["CcInfo"].compilation_context.system_includes.to_list() system_includes = cc_info.compilation_context.system_includes.to_list()
ccObjectFiles = [] ccObjectFiles = []
staticLibraries = [] staticLibraries = []
rootStaticArchives = [] rootStaticArchives = []
linker_inputs = providers(target)["CcInfo"].linking_context.linker_inputs.to_list() linker_inputs = cc_info.linking_context.linker_inputs.to_list()
for linker_input in linker_inputs: for linker_input in linker_inputs:
for library in linker_input.libraries: for library in linker_input.libraries:
@@ -120,8 +121,9 @@ for linker_input in linker_inputs:
rootDynamicLibraries = [] rootDynamicLibraries = []
if "@rules_cc//examples:experimental_cc_shared_library.bzl%CcSharedLibraryInfo" in providers(target): shared_info_tag = "@rules_cc//examples:experimental_cc_shared_library.bzl%CcSharedLibraryInfo"
shared_info = providers(target)["@rules_cc//examples:experimental_cc_shared_library.bzl%CcSharedLibraryInfo"] if shared_info_tag in providers(target):
shared_info = providers(target)[shared_info_tag]
for lib in shared_info.linker_input.libraries: for lib in shared_info.linker_input.libraries:
rootDynamicLibraries += [lib.dynamic_library.path] rootDynamicLibraries += [lib.dynamic_library.path]