1/*
2 * Copyright (C) 2021 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package {
18    default_team: "trendy_team_aaos_framework",
19    default_applicable_licenses: ["Android-Apache-2.0"],
20}
21
22cc_binary {
23    name: "android.hardware.automotive.vehicle@V3-default-service",
24    vendor: true,
25    defaults: [
26        "FakeVehicleHardwareDefaults",
27        "VehicleHalDefaults",
28        "android-automotive-large-parcelable-defaults",
29    ],
30    vintf_fragments: ["vhal-default-service.xml"],
31    init_rc: ["vhal-default-service.rc"],
32    relative_install_path: "hw",
33    srcs: ["src/VehicleService.cpp"],
34    static_libs: [
35        "DefaultVehicleHal",
36        "FakeVehicleHardware",
37        "VehicleHalUtils",
38    ],
39    header_libs: [
40        "IVehicleHardware",
41    ],
42    shared_libs: [
43        "libbinder_ndk",
44    ],
45}
46
47cc_library {
48    name: "DefaultVehicleHal",
49    vendor: true,
50    defaults: [
51        "VehicleHalDefaults",
52    ],
53    local_include_dirs: ["include"],
54    export_include_dirs: ["include"],
55    srcs: [
56        "src/ConnectedClient.cpp",
57        "src/DefaultVehicleHal.cpp",
58        "src/SubscriptionManager.cpp",
59        // A target to check whether the file
60        // android.hardware.automotive.vehicle-types-meta.json needs update.
61        // The output is just an empty cpp file and not actually used.
62        ":check_generated_enum_metadata_json",
63    ],
64    static_libs: [
65        "VehicleHalUtils",
66    ],
67    header_libs: [
68        "IVehicleHardware",
69        "IVehicleGeneratedHeaders-V3",
70    ],
71    shared_libs: [
72        "libbinder_ndk",
73    ],
74}
75
76cc_fuzz {
77    name: "android.hardware.automotive.vehicle-default-service_fuzzer",
78    vendor: true,
79    defaults: [
80        "FakeVehicleHardwareDefaults",
81        "VehicleHalDefaults",
82        "android-automotive-large-parcelable-defaults",
83        "service_fuzzer_defaults",
84    ],
85    static_libs: [
86        "DefaultVehicleHal",
87        "FakeVehicleHardware",
88        "VehicleHalUtils",
89    ],
90    srcs: ["src/fuzzer.cpp"],
91    fuzz_config: {
92        cc: [
93            "keithmok@google.com",
94        ],
95    },
96}
97