• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (C) 2022 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_applicable_licenses: ["Android-Apache-2.0"],
17}
18
19java_sdk_library {
20    name: "framework-configinfrastructure",
21    srcs: [
22        "java/**/*.java",
23        "java/**/*.aidl",
24    ],
25    defaults: ["framework-module-defaults"],
26    permitted_packages: [
27        "android.internal.configinfra",
28        "android.provider",
29        "android.provider.flags",
30        "android.provider.x",
31        "android.provider.aidl",
32        "android.os.flagging",
33    ],
34    apex_available: [
35        "com.android.configinfrastructure",
36    ],
37    min_sdk_version: "34",
38    sdk_version: "module_current",
39    impl_library_visibility: [
40        "//packages/modules/ConfigInfrastructure:__subpackages__",
41        "//frameworks/base/ravenwood",
42    ],
43    libs: [
44        "unsupportedappusage",
45        "aconfig_storage_stub",
46    ],
47    static_libs: [
48        "aconfigd_java_proto_lib_repackaged",
49        "configinfra_framework_flags_java_lib",
50        "modules-utils-build",
51        "modules-utils-proto",
52        "aconfig_storage_file_java",
53    ],
54    aconfig_declarations: [
55        "configinfra_framework_flags",
56    ],
57    jarjar_rules: ":framework-configinfrastructure-jarjar",
58    lint: {
59        baseline_filename: "lint-baseline.xml",
60    },
61}
62
63filegroup {
64    name: "framework-configinfrastructure-ravenwood-policies",
65    srcs: [
66        "framework-configinfrastructure-ravenwood-policies.txt",
67    ],
68    visibility: ["//frameworks/base/ravenwood"],
69}
70
71aconfig_declarations {
72    name: "configinfra_framework_flags",
73    package: "android.provider.flags",
74    container: "com.android.configinfrastructure",
75    srcs: [
76        "flags.aconfig",
77    ],
78    exportable: true,
79}
80
81java_aconfig_library {
82    name: "configinfra_framework_flags_java_lib",
83    min_sdk_version: "34",
84    apex_available: [
85        "com.android.configinfrastructure",
86        "//apex_available:platform", // Used by DeviceConfigService
87    ],
88    visibility: [
89        "//visibility:public",
90    ],
91    aconfig_declarations: "configinfra_framework_flags",
92    sdk_version: "core_platform",
93    libs: [
94        "fake_device_config",
95    ],
96}
97
98java_aconfig_library {
99    name: "configinfra_framework_flags_java_exported_lib",
100    mode: "exported",
101    min_sdk_version: "34",
102    apex_available: [
103        "com.android.configinfrastructure",
104        "//apex_available:platform", // Used by DeviceConfigService
105    ],
106    visibility: [
107        "//visibility:public",
108    ],
109    aconfig_declarations: "configinfra_framework_flags",
110    sdk_version: "core_platform",
111    libs: [
112        "fake_device_config",
113    ],
114}
115
116filegroup {
117    name: "framework-configinfrastructure-jarjar",
118    srcs: [
119        "jarjar-rules.txt",
120    ],
121}
122