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
diff --git a/java/core-libraries/TxtStubLibraries.bp b/java/core-libraries/TxtStubLibraries.bp
index 0241514..813187e 100644
--- a/java/core-libraries/TxtStubLibraries.bp
+++ b/java/core-libraries/TxtStubLibraries.bp
@@ -34,7 +34,7 @@
     ],
     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 @@
     ],
     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 @@
     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 @@
     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 @@
     // 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,
+}
diff --git a/java/sdk.go b/java/sdk.go
index 1b18ba4..8b4918a 100644
--- a/java/sdk.go
+++ b/java/sdk.go
@@ -151,7 +151,7 @@
 		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 @@
 	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,
 		}