Merge "Basic bp2build converter for java_import." am: ea64e62dab am: bf670bc2c5 am: 9fcbe2509a am: fb012b7baa

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1965379

Change-Id: Ib1139bd6914423c79b45e7d673a2264e070d91b5
This commit is contained in:
Romain Jobredeaux
2022-01-29 21:15:26 +00:00
committed by Automerger Merge Worker
3 changed files with 79 additions and 5 deletions

View File

@@ -1328,6 +1328,7 @@ type Import struct {
android.ModuleBase
android.DefaultableModuleBase
android.ApexModuleBase
android.BazelModuleBase
prebuilt android.Prebuilt
android.SdkBase
@@ -1683,6 +1684,7 @@ func ImportFactory() android.Module {
android.InitPrebuiltModule(module, &module.properties.Jars)
android.InitApexModule(module)
android.InitSdkAwareModule(module)
android.InitBazelModule(module)
InitJavaModule(module, android.HostAndDeviceSupported)
return module
}
@@ -2101,3 +2103,21 @@ func javaBinaryHostBp2Build(ctx android.TopDownMutatorContext, m *Binary) {
// Create the BazelTargetModule.
ctx.CreateBazelTargetModule(props, android.CommonAttributes{Name: m.Name()}, attrs)
}
type bazelJavaImportAttributes struct {
Jars bazel.LabelListAttribute
}
// java_import bp2Build converter.
func (i *Import) ConvertWithBp2build(ctx android.TopDownMutatorContext) {
//TODO(b/209577426): Support multiple arch variants
jars := bazel.MakeLabelListAttribute(android.BazelLabelForModuleSrcExcludes(ctx, i.properties.Jars, []string(nil)))
attrs := &bazelJavaImportAttributes{
Jars: jars,
}
props := bazel.BazelTargetModuleProperties{Rule_class: "java_import"}
ctx.CreateBazelTargetModule(props, android.CommonAttributes{Name: android.RemoveOptionalPrebuiltPrefix(i.Name())}, attrs)
}