1// Copyright (C) 2021 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
15package {
16    default_team: "trendy_team_android_permissions",
17    default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
20filegroup {
21    name: "framework-permission-s-sources",
22    defaults: ["framework-sources-module-defaults"],
23    srcs: [
24        "java/**/*.java",
25        "java/**/*.aidl",
26    ],
27    path: "java",
28}
29
30filegroup {
31    name: "safetycenter-config-api-sources",
32    srcs: ["java/android/safetycenter/config/*.java"],
33    path: "java",
34    visibility: ["//packages/modules/Permission/SafetyCenter/ConfigLintChecker"],
35}
36
37filegroup {
38    name: "safetycenter-config-schemas",
39    srcs: ["java/android/safetycenter/config/safety_center_config*.xsd"],
40    path: "java/android/safetycenter/config/",
41    visibility: ["//packages/modules/Permission/SafetyCenter/ConfigLintChecker"],
42}
43
44java_library {
45    name: "framework-permission-s-shared",
46    srcs: [":framework-permission-s-shared-srcs"],
47    libs: [
48        "error_prone_annotations",
49        "framework-annotations-lib",
50        "unsupportedappusage",
51    ],
52    apex_available: [
53        "com.android.permission",
54        "test_com.android.permission",
55    ],
56    installable: false,
57    min_sdk_version: "30",
58    sdk_version: "module_current",
59    lint: {
60        baseline_filename: "lint-baseline.xml",
61    },
62}
63
64platform_compat_config {
65    name: "framework-permission-s-compat-config",
66    src: ":framework-permission-s",
67}
68
69java_sdk_library {
70    name: "framework-permission-s",
71    defaults: ["framework-module-defaults"],
72    srcs: [
73        ":framework-permission-s-sources",
74    ],
75    libs: [
76        "androidx.annotation_annotation",
77        "app-compat-annotations",
78        "framework-annotations-lib",
79    ],
80    static_libs: [
81        "framework-permission-s-shared",
82        "modules-utils-build",
83        "android.permission.flags-aconfig-java-export",
84        "com.android.permission.flags-aconfig-java",
85    ],
86    apex_available: [
87        "com.android.permission",
88        "test_com.android.permission",
89    ],
90    hostdex: true,
91    // Restrict access to implementation library.
92    impl_library_visibility: [
93        "//frameworks/base/apex/permission:__subpackages__",
94        "//packages/modules/Permission:__subpackages__",
95    ],
96    installable: true,
97    jarjar_rules: "jarjar-rules.txt",
98    min_sdk_version: "31",
99    permitted_packages: [
100        "android.permission",
101        "android.app.role",
102        "android.app.ecm",
103        "android.safetycenter",
104        "android.safetylabel",
105    ],
106    aconfig_declarations: [
107        "android.permission.flags-aconfig",
108        "com.android.permission.flags-aconfig",
109    ],
110}
111