From fde9fb5c9c5e0171177a7ff65afd20097ae1c966 Mon Sep 17 00:00:00 2001 From: Sam Delmerico Date: Fri, 28 Jan 2022 20:53:38 +0000 Subject: convert java static dependencies This commit enables conversions of java_library_static and adds the static_deps Soong attribute to Bazel deps for all Java libraries. Currently, Soong handles static dependencies for Java differently, and Bp2build may need to address that later (see b/217236083). Bug: 215229742 Test: go test ./bp2build Change-Id: I4f86780c634dca0a2cfb9294084b14e139cc2375 --- java/java.go | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'java/java.go') diff --git a/java/java.go b/java/java.go index ca4b3cf41..867045aa0 100644 --- a/java/java.go +++ b/java/java.go @@ -2005,7 +2005,7 @@ type javaLibraryAttributes struct { Javacopts bazel.StringListAttribute } -func javaLibraryBp2Build(ctx android.TopDownMutatorContext, m *Library) { +func (m *Library) convertLibraryAttrsBp2Build(ctx android.TopDownMutatorContext) *javaLibraryAttributes { srcs := bazel.MakeLabelListAttribute(android.BazelLabelForModuleSrcExcludes(ctx, m.properties.Srcs, m.properties.Exclude_srcs)) attrs := &javaLibraryAttributes{ Srcs: srcs, @@ -2015,9 +2015,21 @@ func javaLibraryBp2Build(ctx android.TopDownMutatorContext, m *Library) { attrs.Javacopts = bazel.MakeStringListAttribute(m.properties.Javacflags) } + var deps bazel.LabelList if m.properties.Libs != nil { - attrs.Deps = bazel.MakeLabelListAttribute(android.BazelLabelForModuleDeps(ctx, m.properties.Libs)) + deps.Append(android.BazelLabelForModuleDeps(ctx, m.properties.Libs)) + } + if m.properties.Static_libs != nil { + //TODO(b/217236083) handle static libs similarly to Soong + deps.Append(android.BazelLabelForModuleDeps(ctx, m.properties.Static_libs)) } + attrs.Deps = bazel.MakeLabelListAttribute(deps) + + return attrs +} + +func javaLibraryBp2Build(ctx android.TopDownMutatorContext, m *Library) { + attrs := m.convertLibraryAttrsBp2Build(ctx) props := bazel.BazelTargetModuleProperties{ Rule_class: "java_library", -- cgit v1.2.3-59-g8ed1b