Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fac9d8e7 authored by Spandan Das's avatar Spandan Das Committed by Gerrit Code Review
Browse files

Merge "Special-case go modules in convertedToBazel" into main

parents ff3fcd1f 64852423
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import (

	"android/soong/ui/metrics/bp2build_metrics_proto"
	"github.com/google/blueprint"
	"github.com/google/blueprint/bootstrap"
	"github.com/google/blueprint/proptools"

	"android/soong/android/allowlists"
@@ -426,8 +427,23 @@ func MixedBuildsEnabled(ctx BaseModuleContext) MixedBuildEnabledStatus {
	return ModuleIncompatibility
}

func isGoModule(module blueprint.Module) bool {
	if _, ok := module.(*bootstrap.GoPackage); ok {
		return true
	}
	if _, ok := module.(*bootstrap.GoBinary); ok {
		return true
	}
	return false
}

// ConvertedToBazel returns whether this module has been converted (with bp2build or manually) to Bazel.
func convertedToBazel(ctx BazelConversionContext, module blueprint.Module) bool {
	// Special-case bootstrap_go_package and bootstrap_go_binary
	// These do not implement Bazelable, but have been converted
	if isGoModule(module) {
		return true
	}
	b, ok := module.(Bazelable)
	if !ok {
		return false
+1 −1
Original line number Diff line number Diff line
@@ -431,7 +431,7 @@ func getOtherModuleLabel(ctx BazelConversionPathContext, dep, tag string,

func BazelModuleLabel(ctx BazelConversionPathContext, module blueprint.Module) string {
	// TODO(b/165114590): Convert tag (":name{.tag}") to corresponding Bazel implicit output targets.
	if !convertedToBazel(ctx, module) {
	if !convertedToBazel(ctx, module) || isGoModule(module) {
		return bp2buildModuleLabel(ctx, module)
	}
	b, _ := module.(Bazelable)