| // |
| // Copyright (C) 2020 The Android Open Source Project |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| // |
| |
| // ========================================================== |
| // Build the library for use on the host |
| // ========================================================== |
| package { |
| default_applicable_licenses: ["Android-Apache-2.0"], |
| } |
| |
| // Enum protos can be reused in multiple libraries (pixelatoms.proto, etc) |
| // Due to size grownth constraints proposed to reuse only what really imported |
| shared_enum_protos = [ |
| "enums/app_shared/*.proto", |
| "enums/display/*.proto", |
| "enums/hardware/biometrics/*.proto", |
| ] |
| |
| enum_protos = [ |
| "enums/**/*.proto", |
| ] |
| |
| atom_protos = [ |
| // go/keep-sorted start |
| "atoms.proto", |
| "atoms/**/*.proto", |
| "attribution_node.proto", |
| // go/keep-sorted end |
| ] |
| |
| cc_library_host_shared { |
| name: "libstats_proto_host", |
| srcs: [ |
| "atom_field_options.proto", |
| ":libstats_atom_message_protos", |
| ] + shared_enum_protos + enum_protos + atom_protos, |
| |
| cflags: [ |
| "-Wno-deprecated-declarations", |
| ], |
| |
| proto: { |
| type: "full", |
| export_proto_headers: true, |
| include_dirs: [ |
| "external/protobuf/src", |
| ], |
| }, |
| } |
| |
| filegroup { |
| name: "libstats_atoms_proto", |
| srcs: atom_protos, |
| } |
| |
| filegroup { |
| name: "libstats_internal_protos", |
| srcs: [ |
| ":libstats_atoms_proto", |
| "atom_field_options.proto", |
| ":libstats_atom_enum_protos", |
| ":libstats_atom_message_protos", |
| ], |
| } |
| |
| filegroup { |
| name: "libstats_atom_options_protos", |
| srcs: [ |
| "atom_field_options.proto", |
| ], |
| } |
| |
| filegroup { |
| name: "libstats_shared_enum_protos", |
| srcs: shared_enum_protos, |
| } |
| |
| filegroup { |
| name: "libstats_atom_enum_protos", |
| srcs: shared_enum_protos + enum_protos, |
| } |
| |
| filegroup { |
| name: "libstats_atom_message_protos", |
| srcs: [ |
| "message/**/*.proto", |
| ], |
| } |
| |
| rust_protobuf { |
| name: "libframework_service_enums_protos_rs", |
| protos: [ |
| "enums/service/enums.proto", |
| ], |
| crate_name: "framework_service_enums_protos_rs", |
| source_stem: "framework_service_enums_protos_rs_source", |
| host_supported: true, |
| } |