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

Commit 4977540b authored by Paul Duffin's avatar Paul Duffin
Browse files

Support dex_import on platform_bootclasspath

Maintain compatibility with previous behavior by ignoring dex_import
during hidden API processing.

Bug: 179354495
Test: m nothing
Change-Id: I976b02129bf981b7b61dce233567d6f89e04f92d
parent ee4e7fe7
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -321,6 +321,8 @@ func (b *platformBootclasspathModule) generateHiddenAPIBuildActions(ctx android.
			}

			hiddenAPISupportingModules = append(hiddenAPISupportingModules, hiddenAPISupportingModule)
		} else if _, ok := module.(*DexImport); ok {
			// Ignore this for the purposes of hidden API processing
		} else {
			ctx.ModuleErrorf("module %s of type %s does not support hidden API processing", module, ctx.OtherModuleType(module))
		}
+17 −0
Original line number Diff line number Diff line
@@ -133,6 +133,23 @@ func TestPlatformBootclasspath(t *testing.T) {
			"platform:bar",
		})
	})

	t.Run("dex import", func(t *testing.T) {
		result := android.GroupFixturePreparers(
			preparer,
			android.FixtureAddTextFile("deximport/Android.bp", `
				dex_import {
					name: "foo",
					jars: ["a.jar"],
				}
			`),
		).RunTest(t)

		CheckPlatformBootclasspathModules(t, result, "platform-bootclasspath", []string{
			"platform:prebuilt_foo",
			"platform:bar",
		})
	})
}

func TestPlatformBootclasspath_Fragments(t *testing.T) {