1// Copyright (C) 2018 The Android Open Source Project 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Referenced implicitly from art.module.intra.core.api. 16package { 17 // http://go/android-license-faq 18 // A large-scale-change added 'default_applicable_licenses' to import 19 // the below license kinds from "libcore_license": 20 // SPDX-license-identifier-Apache-2.0 21 // SPDX-license-identifier-GPL 22 // SPDX-license-identifier-GPL-2.0 23 // SPDX-license-identifier-LGPL 24 // SPDX-license-identifier-MIT 25 // SPDX-license-identifier-W3C 26 default_applicable_licenses: ["libcore_license"], 27} 28 29filegroup { 30 name: "art.module.intra.core.api.api.combined.public.latest", 31 srcs: [ 32 "api/intra/last-api.txt", 33 ], 34} 35 36// Referenced implicitly from art.module.intra.core.api. 37filegroup { 38 name: "art.module.intra.core.api-removed.api.combined.public.latest", 39 srcs: [ 40 "api/intra/last-removed.txt", 41 ], 42} 43 44// Referenced implicitly from art.module.intra.core.api. 45filegroup { 46 name: "art.module.intra.core.api-incompatibilities.api.public.latest", 47 srcs: [ 48 "api/intra/last-incompatibilities.txt", 49 ], 50} 51 52// A library containing the intra-core API stubs of the ART module. 53// 54// Intra-core APIs are only intended for the use of other core library modules. 55// 56// The API specification .txt files managed by this only contain the additional 57// classes/members that are in the intra-core API but which are not the public API. 58java_sdk_library { 59 name: "art.module.intra.core.api", 60 visibility: [ 61 "//build/soong/java/core-libraries", 62 "//libcore/mmodules/core_platform_api", 63 ], 64 srcs: [ 65 ":art_module_api_files", 66 ], 67 api_dir: "api/intra", 68 api_only: true, 69 droiddoc_options: [ 70 "--hide-annotation libcore.api.Hide", 71 "--show-single-annotation libcore.api.IntraCoreApi", 72 ], 73 merge_inclusion_annotations_dirs: ["ojluni-annotated-mmodule-stubs"], 74 75 sdk_version: "none", 76 system_modules: "none", 77 patch_module: "java.base", 78 79 // This jar is packaged as part of the SDK, use -target 8 so that it works 80 // with old JDKs. 81 java_version: "1.8", 82 83 // Don't copy any output files to the dist. 84 no_dist: true, 85 86 // This module's output stubs contain apis defined in "art.module.public.api.stubs", 87 // but adding "art.module.public.api" as a dependency of this module leads to circular 88 // dependency and requires further bootstrapping. Thus, disable stubs generation from the 89 // api signature files and generate stubs from the source Java files instead. 90 build_from_text_stub: false, 91} 92 93// Bootstrap the art-module-intra-core-api-stubs-system-modules. 94// 95// This is needed to build art-module-intra-core-api-stubs-system-modules-lib 96// which is in turn needed to build art-module-intra-core-api-stubs-system-modules 97java_system_modules { 98 name: "art-module-intra-core-api-stubs-bootstrap-system-modules", 99 visibility: [ 100 "//libcore/toolchainapi", 101 "//build/soong/java/core-libraries", 102 ], 103 libs: [ 104 // The intra core API stubs library. 105 "art.module.intra.core.api.stubs", 106 ], 107} 108 109// A library containing additional classes that are needed in the system modules. 110java_library { 111 name: "art-module-intra-core-api-stubs-system-modules-lib", 112 visibility: [ 113 "//build/soong/java/core-libraries", 114 ], 115 srcs: [ 116 ":openjdk_lambda_stub_files", 117 ], 118 libs: [ 119 "art.module.intra.core.api.stubs", 120 ], 121 system_modules: "art-module-intra-core-api-stubs-bootstrap-system-modules", 122 sdk_version: "none", 123 patch_module: "java.base", 124 125 // This jar is packaged as part of the SDK, use -target 8 so that it works 126 // with old JDKs. 127 java_version: "1.8", 128} 129