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

Commit 21bfa581 authored by Vinh Tran's avatar Vinh Tran
Browse files

Revert "Revert "Revert "Add aidl.deps prop to include aidl implicit deps...

Revert "Revert "Revert "Add aidl.deps prop to include aidl implicit deps explicitly in Android.bp"""

This reverts commit e3e7711a.

Reason for revert: CI fixed

Change-Id: Ib038241eae5ec6af78ac24105c891db55a4d0544
parent c938bec4
Loading
Loading
Loading
Loading
+0 −12
Original line number Diff line number Diff line
@@ -82,7 +82,6 @@ type bazelFilegroupAttributes struct {
type bazelAidlLibraryAttributes struct {
	Srcs                bazel.LabelListAttribute
	Strip_import_prefix *string
	Deps                bazel.LabelListAttribute
}

// api srcs can be contained in filegroups.
@@ -121,12 +120,9 @@ func (fg *fileGroup) ConvertWithBp2build(ctx TopDownMutatorContext) {
	// and then convert
	if fg.ShouldConvertToAidlLibrary(ctx) {
		tags := []string{"apex_available=//apex_available:anyapex"}
		deps := bazel.MakeLabelListAttribute(BazelLabelForModuleDeps(ctx, fg.properties.Aidl.Deps))

		attrs := &bazelAidlLibraryAttributes{
			Srcs:                srcs,
			Strip_import_prefix: fg.properties.Path,
			Deps:                deps,
		}

		props := bazel.BazelTargetModuleProperties{
@@ -203,14 +199,6 @@ type fileGroupProperties struct {
	// Create a make variable with the specified name that contains the list of files in the
	// filegroup, relative to the root of the source tree.
	Export_to_make_var *string

	// aidl is explicitly provided for implicit aidl dependencies
	// TODO(b/278298615): aidl prop is a no-op in Soong and is an escape hatch
	// to include implicit aidl dependencies for bazel migration compatibility
	Aidl struct {
		// List of aidl files or filegroup depended on by srcs
		Deps []string `android:"path"`
	}
}

type fileGroup struct {
+0 −36
Original line number Diff line number Diff line
@@ -105,42 +105,6 @@ func TestFilegroupWithAidlSrcs(t *testing.T) {
	}
}

func TestFilegroupWithAidlDeps(t *testing.T) {
	bp := `
	filegroup {
		name: "bar",
		srcs: ["bar.aidl"],
	}
	filegroup {
		name: "foo",
		srcs: ["aidl/foo.aidl"],
		path: "aidl",
		aidl: {
			deps: [":bar"],
		}
	}`

	t.Run("filegroup with aidl deps", func(t *testing.T) {
		expectedBazelTargets := []string{
			MakeBazelTargetNoRestrictions("aidl_library", "bar", AttrNameToString{
				"srcs": `["bar.aidl"]`,
				"tags": `["apex_available=//apex_available:anyapex"]`,
			}),
			MakeBazelTargetNoRestrictions("aidl_library", "foo", AttrNameToString{
				"srcs":                `["aidl/foo.aidl"]`,
				"strip_import_prefix": `"aidl"`,
				"deps":                `[":bar"]`,
				"tags":                `["apex_available=//apex_available:anyapex"]`,
			}),
		}
		runFilegroupTestCase(t, Bp2buildTestCase{
			Description:          "filegroup with aidl deps",
			Blueprint:            bp,
			ExpectedBazelTargets: expectedBazelTargets,
		})
	})
}

func TestFilegroupWithAidlAndNonAidlSrcs(t *testing.T) {
	runFilegroupTestCase(t, Bp2buildTestCase{
		Description: "filegroup with aidl and non-aidl srcs",