|  | // Copyright (C) 2023 The Android Open Source Project | 
|  | // | 
|  | // Licensed under the Apache License, Version 2.0 (the "License"); | 
|  | // you may not use this file except in compliance with the License. | 
|  | // You may obtain a copy of the License at | 
|  | // | 
|  | //      http://www.apache.org/licenses/LICENSE-2.0 | 
|  | // | 
|  | // Unless required by applicable law or agreed to in writing, software | 
|  | // distributed under the License is distributed on an "AS IS" BASIS, | 
|  | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
|  | // See the License for the specific language governing permissions and | 
|  | // limitations under the License. | 
|  |  | 
|  | // This file contains java_system_modules provided by the SDK. | 
|  | // These system modules transitively depend on core stub libraries generated from .txt files. | 
|  |  | 
|  | // Same as core-public-stubs-system-modules, but the stubs are generated from .txt files | 
|  | java_system_modules { | 
|  | name: "core-public-stubs-system-modules.from-text", | 
|  | visibility: ["//visibility:public"], | 
|  | libs: [ | 
|  | "core-current-stubs-for-system-modules-no-annotations.from-text", | 
|  | ], | 
|  | } | 
|  |  | 
|  | java_library { | 
|  | name: "core-current-stubs-for-system-modules-no-annotations.from-text", | 
|  | visibility: ["//visibility:private"], | 
|  | defaults: [ | 
|  | "system-modules-no-annotations", | 
|  | ], | 
|  | static_libs: [ | 
|  | "core.current.stubs.from-text", | 
|  | "core-lambda-stubs.from-text", | 
|  | ], | 
|  | } | 
|  |  | 
|  | // Same as core-module-lib-stubs-system-modules, but the stubs are generated from .txt files | 
|  | java_system_modules { | 
|  | name: "core-module-lib-stubs-system-modules.from-text", | 
|  | visibility: ["//visibility:public"], | 
|  | libs: [ | 
|  | "core-module-lib-stubs-for-system-modules-no-annotations.from-text", | 
|  | ], | 
|  | } | 
|  |  | 
|  | java_library { | 
|  | name: "core-module-lib-stubs-for-system-modules-no-annotations.from-text", | 
|  | visibility: ["//visibility:private"], | 
|  | defaults: [ | 
|  | "system-modules-no-annotations", | 
|  | ], | 
|  | static_libs: [ | 
|  | "core.module_lib.stubs.from-text", | 
|  | "core-lambda-stubs.from-text", | 
|  | ], | 
|  | } | 
|  |  | 
|  | java_api_library { | 
|  | name: "core.module_lib.stubs.from-text", | 
|  | api_surface: "module-lib", | 
|  | api_contributions: [ | 
|  | "art.module.public.api.stubs.source.api.contribution", | 
|  | "art.module.public.api.stubs.source.system.api.contribution", | 
|  | "art.module.public.api.stubs.source.module_lib.api.contribution", | 
|  |  | 
|  | // Add the module-lib correspondence when Conscrypt or i18N module | 
|  | // provides @SystemApi(MODULE_LIBRARIES). Currently, assume that only ART module provides | 
|  | // @SystemApi(MODULE_LIBRARIES). | 
|  | "conscrypt.module.public.api.stubs.source.api.contribution", | 
|  | "i18n.module.public.api.stubs.source.api.contribution", | 
|  | ], | 
|  | libs: [ | 
|  | "stub-annotations", | 
|  | ], | 
|  | visibility: ["//visibility:private"], | 
|  | } | 
|  |  | 
|  | // Same as legacy-core-platform-api-stubs-system-modules, but the stubs are generated from .txt files | 
|  | java_system_modules { | 
|  | name: "legacy-core-platform-api-stubs-system-modules.from-text", | 
|  | visibility: core_platform_visibility, | 
|  | libs: [ | 
|  | "legacy.core.platform.api.no.annotations.stubs.from-text", | 
|  | "core-lambda-stubs.from-text", | 
|  | ], | 
|  | } | 
|  |  | 
|  | java_library { | 
|  | name: "legacy.core.platform.api.no.annotations.stubs.from-text", | 
|  | visibility: core_platform_visibility, | 
|  | defaults: [ | 
|  | "system-modules-no-annotations", | 
|  | ], | 
|  | hostdex: true, | 
|  | compile_dex: true, | 
|  |  | 
|  | static_libs: [ | 
|  | "legacy.core.platform.api.stubs.from-text", | 
|  | ], | 
|  | patch_module: "java.base", | 
|  | } | 
|  |  | 
|  | // Same as stable-core-platform-api-stubs-system-modules, but the stubs are generated from .txt files | 
|  | java_system_modules { | 
|  | name: "stable-core-platform-api-stubs-system-modules.from-text", | 
|  | visibility: core_platform_visibility, | 
|  | libs: [ | 
|  | "stable.core.platform.api.no.annotations.stubs.from-text", | 
|  | "core-lambda-stubs.from-text", | 
|  | ], | 
|  | } | 
|  |  | 
|  | java_library { | 
|  | name: "stable.core.platform.api.no.annotations.stubs.from-text", | 
|  | visibility: core_platform_visibility, | 
|  | defaults: [ | 
|  | "system-modules-no-annotations", | 
|  | ], | 
|  | hostdex: true, | 
|  | compile_dex: true, | 
|  |  | 
|  | static_libs: [ | 
|  | "stable.core.platform.api.stubs.from-text", | 
|  | ], | 
|  | patch_module: "java.base", | 
|  | } | 
|  |  | 
|  | 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", | 
|  | ], | 
|  | } |