1*115816f9SAndroid Build Coastguard Worker// Copyright (C) 2018 The Android Open Source Project 2*115816f9SAndroid Build Coastguard Worker// 3*115816f9SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*115816f9SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*115816f9SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*115816f9SAndroid Build Coastguard Worker// 7*115816f9SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*115816f9SAndroid Build Coastguard Worker// 9*115816f9SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*115816f9SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*115816f9SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*115816f9SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*115816f9SAndroid Build Coastguard Worker// limitations under the License. 14*115816f9SAndroid Build Coastguard Worker 15*115816f9SAndroid Build Coastguard Workerpackage { 16*115816f9SAndroid Build Coastguard Worker default_applicable_licenses: ["Android-Apache-2.0"], 17*115816f9SAndroid Build Coastguard Worker} 18*115816f9SAndroid Build Coastguard Worker 19*115816f9SAndroid Build Coastguard Workerjava_library_host { 20*115816f9SAndroid Build Coastguard Worker name: "metalava-signature-reader", 21*115816f9SAndroid Build Coastguard Worker static_libs: [ 22*115816f9SAndroid Build Coastguard Worker "metalava-model", 23*115816f9SAndroid Build Coastguard Worker "metalava-model-text", 24*115816f9SAndroid Build Coastguard Worker ], 25*115816f9SAndroid Build Coastguard Worker} 26*115816f9SAndroid Build Coastguard Worker 27*115816f9SAndroid Build Coastguard Worker// Make the version.properties file available for `metalava-main` in `metalava` 28*115816f9SAndroid Build Coastguard Worker// directory. 29*115816f9SAndroid Build Coastguard Workerfilegroup { 30*115816f9SAndroid Build Coastguard Worker name: "metalava-version", 31*115816f9SAndroid Build Coastguard Worker visibility: [ 32*115816f9SAndroid Build Coastguard Worker "//tools/metalava:__subpackages__", 33*115816f9SAndroid Build Coastguard Worker ], 34*115816f9SAndroid Build Coastguard Worker srcs: ["version.properties"], 35*115816f9SAndroid Build Coastguard Worker} 36*115816f9SAndroid Build Coastguard Worker 37*115816f9SAndroid Build Coastguard Workerjava_library { 38*115816f9SAndroid Build Coastguard Worker name: "stub-annotations", 39*115816f9SAndroid Build Coastguard Worker host_supported: true, 40*115816f9SAndroid Build Coastguard Worker srcs: [ 41*115816f9SAndroid Build Coastguard Worker "stub-annotations/src/main/java/**/*.java", 42*115816f9SAndroid Build Coastguard Worker ], 43*115816f9SAndroid Build Coastguard Worker // Allow core_current to use stub-annotations. 44*115816f9SAndroid Build Coastguard Worker sdk_version: "28", 45*115816f9SAndroid Build Coastguard Worker target: { 46*115816f9SAndroid Build Coastguard Worker host: { 47*115816f9SAndroid Build Coastguard Worker dist: { 48*115816f9SAndroid Build Coastguard Worker targets: ["sdk"], 49*115816f9SAndroid Build Coastguard Worker }, 50*115816f9SAndroid Build Coastguard Worker }, 51*115816f9SAndroid Build Coastguard Worker }, 52*115816f9SAndroid Build Coastguard Worker} 53*115816f9SAndroid Build Coastguard Worker 54*115816f9SAndroid Build Coastguard Workergenrule { 55*115816f9SAndroid Build Coastguard Worker name: "private-stub-annotations", 56*115816f9SAndroid Build Coastguard Worker tools: [ 57*115816f9SAndroid Build Coastguard Worker "soong_zip", 58*115816f9SAndroid Build Coastguard Worker "metalava", 59*115816f9SAndroid Build Coastguard Worker ], 60*115816f9SAndroid Build Coastguard Worker srcs: [ 61*115816f9SAndroid Build Coastguard Worker "stub-annotations/src/main/java/**/*.java", 62*115816f9SAndroid Build Coastguard Worker ], 63*115816f9SAndroid Build Coastguard Worker cmd: "($(location metalava) make-annotations-package-private " + 64*115816f9SAndroid Build Coastguard Worker "tools/metalava/stub-annotations/src/main/java $(genDir)/private-stub-annotations) " + 65*115816f9SAndroid Build Coastguard Worker "&& ($(location soong_zip) -o $(out) -C $(genDir) -D $(genDir))", 66*115816f9SAndroid Build Coastguard Worker out: [ 67*115816f9SAndroid Build Coastguard Worker "private-stub-annotations.srcjar", 68*115816f9SAndroid Build Coastguard Worker ], 69*115816f9SAndroid Build Coastguard Worker} 70*115816f9SAndroid Build Coastguard Worker 71*115816f9SAndroid Build Coastguard Workerjava_library { 72*115816f9SAndroid Build Coastguard Worker name: "private-stub-annotations-jar", 73*115816f9SAndroid Build Coastguard Worker host_supported: true, 74*115816f9SAndroid Build Coastguard Worker srcs: [ 75*115816f9SAndroid Build Coastguard Worker ":private-stub-annotations", 76*115816f9SAndroid Build Coastguard Worker ], 77*115816f9SAndroid Build Coastguard Worker sdk_version: "core_current", 78*115816f9SAndroid Build Coastguard Worker // private-stub-annotations-jar ends up in android.jar in the SDK and should 79*115816f9SAndroid Build Coastguard Worker // use -target 8. 80*115816f9SAndroid Build Coastguard Worker java_version: "1.8", 81*115816f9SAndroid Build Coastguard Worker} 82*115816f9SAndroid Build Coastguard Worker 83*115816f9SAndroid Build Coastguard Workerdroiddoc_exported_dir { 84*115816f9SAndroid Build Coastguard Worker name: "metalava-manual", 85*115816f9SAndroid Build Coastguard Worker path: "manual", 86*115816f9SAndroid Build Coastguard Worker} 87