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

Commit 760f8804 authored by Spandan Das's avatar Spandan Das
Browse files

Create core-lambda-stubs from .txt files

APIs to compile lambda are part of art's toolchain api surface.
Generating stubs from .txt files allows us to prune the remaining sdk
dependencies on libcore/ that are not api files

Test: m core-lambda-stubs.from-text
(On top of change containing core.current.stubs.from-text
and turning enabled: true)

Change-Id: I0ab8459b9317cb055a434eb635ba06d38da5b92e
parent 0cb803a5
Loading
Loading
Loading
Loading
+18 −4
Original line number Diff line number Diff line
@@ -34,7 +34,7 @@ java_library {
    ],
    static_libs: [
        "core.current.stubs.from-text",
        "core-lambda-stubs-for-system-modules",
        "core-lambda-stubs.from-text",
    ],
    // TODO: Enable after stub generation from .txt file is available
    enabled: false,
@@ -59,7 +59,7 @@ java_library {
    ],
    static_libs: [
        "core.module_lib.stubs.from-text",
        "core-lambda-stubs-for-system-modules",
        "core-lambda-stubs.from-text",
    ],
    // TODO: Enable after stub generation from .txt file is available
    enabled: false,
@@ -89,7 +89,7 @@ java_system_modules {
    visibility: core_platform_visibility,
    libs: [
        "legacy.core.platform.api.no.annotations.stubs.from-text",
        "core-lambda-stubs-for-system-modules",
        "core-lambda-stubs.from-text",
    ],
    // TODO: Enable after stub generation from .txt file is available
    enabled: false,
@@ -118,7 +118,7 @@ java_system_modules {
    visibility: core_platform_visibility,
    libs: [
        "stable.core.platform.api.no.annotations.stubs.from-text",
        "core-lambda-stubs-for-system-modules",
        "core-lambda-stubs.from-text",
    ],
    // TODO: Enable after stub generation from .txt file is available
    enabled: false,
@@ -140,3 +140,17 @@ java_library {
    // TODO: Enable after stub generation from .txt file is available
    enabled: false,
}

java_api_library {
    name: "core-lambda-stubs.from-text",
    api_surface: "toolchain",
    api_contributions: [
        "art.module.toolchain.api.api.contribution",
    ],
    libs: [
        // LambdaMetaFactory depends on CallSite etc. which is part of the Core API surface
        "core.current.stubs.from-text",
    ],
    // TODO: Enable after stub generation from .txt file is available
    enabled: false,
}
+2 −2
Original line number Diff line number Diff line
@@ -151,7 +151,7 @@ func decodeSdkDep(ctx android.EarlyModuleContext, sdkContext android.SdkContext)
		systemModules := android.JavaApiLibraryName(ctx.Config(), fmt.Sprintf("core-%s-stubs-system-modules", systemModulesKind))
		return sdkDep{
			useModule:          true,
			bootclasspath:      []string{module, config.DefaultLambdaStubsLibrary},
			bootclasspath:      []string{module, android.JavaApiLibraryName(ctx.Config(), config.DefaultLambdaStubsLibrary)},
			systemModules:      systemModules,
			java9Classpath:     []string{module},
			frameworkResModule: "framework-res",
@@ -197,7 +197,7 @@ func decodeSdkDep(ctx android.EarlyModuleContext, sdkContext android.SdkContext)
	case android.SdkCore:
		return sdkDep{
			useModule:        true,
			bootclasspath:    []string{android.SdkCore.JavaLibraryName(ctx.Config()), config.DefaultLambdaStubsLibrary},
			bootclasspath:    []string{android.SdkCore.JavaLibraryName(ctx.Config()), android.JavaApiLibraryName(ctx.Config(), config.DefaultLambdaStubsLibrary)},
			systemModules:    android.JavaApiLibraryName(ctx.Config(), "core-public-stubs-system-modules"),
			noFrameworksLibs: true,
		}