• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (C) 2024 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
15filegroup {
16    name: "aconfigd_protos",
17    srcs: ["aconfigd.proto"],
18}
19
20rust_protobuf {
21    name: "libaconfigd_rust_proto",
22    crate_name: "aconfigd_rust_proto",
23    source_stem: "aconfigd_rust_proto_source",
24    protos: [
25        "aconfigd.proto",
26    ],
27    host_supported: true,
28    min_sdk_version: "34",
29    apex_available: [
30        "//apex_available:anyapex",
31        "//apex_available:platform",
32    ],
33}
34
35rust_defaults {
36    name: "aconfigd_protos.defaults",
37    edition: "2021",
38    clippy_lints: "android",
39    lints: "android",
40    srcs: ["src/lib.rs"],
41    rustlibs: [
42        "libaconfigd_rust_proto",
43        "libanyhow",
44        "libprotobuf",
45    ],
46    proc_macros: [
47        "libpaste",
48    ],
49    min_sdk_version: "34",
50}
51
52rust_library {
53    name: "libaconfigd_protos_rust",
54    crate_name: "aconfigd_protos",
55    defaults: ["aconfigd_protos.defaults"],
56    host_supported: true,
57    apex_available: [
58        "//apex_available:anyapex",
59        "//apex_available:platform",
60    ],
61}
62
63cc_library_static {
64    name: "libaconfigd_protos_cc",
65    proto: {
66        export_proto_headers: true,
67        type: "lite",
68    },
69    srcs: ["aconfigd.proto"],
70    min_sdk_version: "34",
71    visibility: [
72        "//system/server_configurable_flags/aconfigd",
73    ],
74    apex_available: [
75        "//apex_available:anyapex",
76        "//apex_available:platform",
77    ],
78}
79
80java_library {
81    name: "aconfigd_java_proto_lib",
82    host_supported: true,
83    srcs: ["aconfigd.proto"],
84    proto: {
85        type: "stream",
86    },
87    sdk_version: "core_current",
88    min_sdk_version: "UpsideDownCake",
89    apex_available: [
90        "//apex_available:anyapex",
91        "//apex_available:platform",
92    ],
93}
94
95java_library {
96    name: "aconfigd_java_proto_lib_repackaged",
97    sdk_version: "core_current",
98    static_libs: [
99        "aconfigd_java_proto_lib",
100    ],
101    min_sdk_version: "UpsideDownCake",
102    apex_available: [
103        "//apex_available:anyapex",
104        "//apex_available:platform",
105    ],
106    jarjar_rules: "repackage-aconfigd-proto-stream.txt",
107}
108
109java_library {
110    name: "aconfigd_java_proto_lite_lib",
111    host_supported: true,
112    srcs: ["aconfigd.proto"],
113    proto: {
114        type: "lite",
115    },
116    sdk_version: "core_current",
117    min_sdk_version: "UpsideDownCake",
118    apex_available: [
119        "//apex_available:anyapex",
120        "//apex_available:platform",
121    ],
122}
123