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

Commit b2bc52e7 authored by Paul Duffin's avatar Paul Duffin Committed by Automerger Merge Worker
Browse files

Remove bootclasspathApiInfo am: 18cf1974 am: 3c228634

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

Change-Id: I4c07be9ce52ec3455ea92778070e8565ec0969f5
parents 74a6d6b0 3c228634
Loading
Loading
Loading
Loading
+0 −9
Original line number Diff line number Diff line
@@ -235,12 +235,3 @@ func (p BootclasspathAPIProperties) sdkKindToStubLibs() map[android.SdkKind][]st
	m[android.SdkCorePlatform] = p.Core_platform_api.Stub_libs
	return m
}

// bootclasspathApiInfo contains paths resolved from BootclasspathAPIProperties
type bootclasspathApiInfo struct {
	// stubJarsByKind maps from the android.SdkKind to the paths containing dex stub jars for each
	// kind.
	stubJarsByKind map[android.SdkKind]android.Paths
}

var bootclasspathApiInfoProvider = blueprint.NewProvider(bootclasspathApiInfo{})
+3 −4
Original line number Diff line number Diff line
@@ -507,10 +507,6 @@ func (b *BootclasspathFragmentModule) generateHiddenAPIBuildActions(ctx android.
	// Create hidden API input structure.
	input := b.createHiddenAPIFlagInput(ctx, contents)

	// Store the information for use by other modules.
	bootclasspathApiInfo := bootclasspathApiInfo{stubJarsByKind: input.StubDexJarsByKind}
	ctx.SetProvider(bootclasspathApiInfoProvider, bootclasspathApiInfo)

	var output *HiddenAPIFlagOutput

	// Hidden API processing is conditional as a temporary workaround as not all
@@ -534,6 +530,9 @@ func (b *BootclasspathFragmentModule) generateHiddenAPIBuildActions(ctx android.
		// generation. That is because the monolithic hidden API processing uses those flag files to
		// perform its own flag generation.
		FlagFilesByCategory: input.FlagFilesByCategory,

		// Make these available for tests.
		StubDexJarsByKind: input.StubDexJarsByKind,
	}

	if output != nil {
+5 −5
Original line number Diff line number Diff line
@@ -252,7 +252,7 @@ func TestBootclasspathFragment_StubLibs(t *testing.T) {
	`)

	fragment := result.Module("myfragment", "android_common")
	info := result.ModuleProvider(fragment, bootclasspathApiInfoProvider).(bootclasspathApiInfo)
	info := result.ModuleProvider(fragment, HiddenAPIInfoProvider).(HiddenAPIInfo)

	stubsJar := "out/soong/.intermediates/mystublib/android_common/dex/mystublib.jar"

@@ -264,17 +264,17 @@ func TestBootclasspathFragment_StubLibs(t *testing.T) {
	otherPublicStubsJar := "out/soong/.intermediates/myothersdklibrary.stubs/android_common/dex/myothersdklibrary.stubs.jar"

	// Check that SdkPublic uses public stubs for all sdk libraries.
	android.AssertPathsRelativeToTopEquals(t, "public dex stubs jar", []string{otherPublicStubsJar, publicStubsJar, stubsJar}, info.stubJarsByKind[android.SdkPublic])
	android.AssertPathsRelativeToTopEquals(t, "public dex stubs jar", []string{otherPublicStubsJar, publicStubsJar, stubsJar}, info.StubDexJarsByKind[android.SdkPublic])

	// Check that SdkSystem uses system stubs for mysdklibrary and public stubs for myothersdklibrary
	// as it does not provide system stubs.
	android.AssertPathsRelativeToTopEquals(t, "system dex stubs jar", []string{otherPublicStubsJar, systemStubsJar, stubsJar}, info.stubJarsByKind[android.SdkSystem])
	android.AssertPathsRelativeToTopEquals(t, "system dex stubs jar", []string{otherPublicStubsJar, systemStubsJar, stubsJar}, info.StubDexJarsByKind[android.SdkSystem])

	// Check that SdkTest also uses system stubs for mysdklibrary as it does not provide test stubs
	// and public stubs for myothersdklibrary as it does not provide test stubs either.
	android.AssertPathsRelativeToTopEquals(t, "test dex stubs jar", []string{otherPublicStubsJar, systemStubsJar, stubsJar}, info.stubJarsByKind[android.SdkTest])
	android.AssertPathsRelativeToTopEquals(t, "test dex stubs jar", []string{otherPublicStubsJar, systemStubsJar, stubsJar}, info.StubDexJarsByKind[android.SdkTest])

	// Check that SdkCorePlatform uses public stubs from the mycoreplatform library.
	corePlatformStubsJar := "out/soong/.intermediates/mycoreplatform.stubs/android_common/dex/mycoreplatform.stubs.jar"
	android.AssertPathsRelativeToTopEquals(t, "core platform dex stubs jar", []string{corePlatformStubsJar}, info.stubJarsByKind[android.SdkCorePlatform])
	android.AssertPathsRelativeToTopEquals(t, "core platform dex stubs jar", []string{corePlatformStubsJar}, info.StubDexJarsByKind[android.SdkCorePlatform])
}
+3 −0
Original line number Diff line number Diff line
@@ -348,6 +348,9 @@ type HiddenAPIInfo struct {
	// that category.
	FlagFilesByCategory FlagFilesByCategory

	// The paths to the stub dex jars for each of the android.SdkKind in hiddenAPIRelevantSdkKinds.
	StubDexJarsByKind StubDexJarsByKind

	// The output from the hidden API processing needs to be made available to other modules.
	HiddenAPIFlagOutput
}