blob: f832902dc7bb11604ad1b55ba2d5bcf6f63c1863 [file] [log] [blame]
Dan Harms25fbf1b2019-07-25 16:09:17 -07001// Copyright (C) 2019 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//
15//
16
17// Build the Car service.
18
Dan Harmsbe8e36d2019-10-31 15:50:45 -070019car_service_sources = ["src/**/*.java"]
Dan Harms25fbf1b2019-07-25 16:09:17 -070020
tadvanaf7746cd2019-10-04 16:02:56 -070021common_lib_deps = [
22 "android.car.userlib",
23 "android.hidl.base-V1.0-java",
24 "android.hardware.automotive.audiocontrol-V1.0-java",
25 "android.hardware.automotive.vehicle-V2.0-java",
26 "android.hardware.health-V1.0-java",
27 "android.hardware.health-V2.0-java",
28 "vehicle-hal-support-lib",
29 "car-systemtest",
30 "com.android.car.procfsinspector-client",
31 "blestream-protos",
32 "SettingsLib",
33 "androidx.preference_preference",
34 "EncryptionRunner",
35]
36
Dan Harms25fbf1b2019-07-25 16:09:17 -070037android_app {
38 name: "CarService",
39
40 srcs: car_service_sources,
41
42 resource_dirs: ["res"],
43
44 platform_apis: true,
45
46 // Each update should be signed by OEMs
47 certificate: "platform",
48 privileged: true,
49
50 optimize: {
51 proguard_flags_files: ["proguard.flags"],
52 enabled: false,
53 },
54
55 libs: ["android.car"],
56
tadvanaf7746cd2019-10-04 16:02:56 -070057 static_libs: common_lib_deps + [
Dan Harms25fbf1b2019-07-25 16:09:17 -070058 "car-frameworks-service",
Dan Harms25fbf1b2019-07-25 16:09:17 -070059 ],
60
61 required: ["privapp_whitelist_com.android.car"],
62
63 // Disable build in PDK, missing aidl import breaks build
64 product_variables: {
65 pdk: {
66 enabled: false,
67 },
68 },
69}
70
71//####################################################################################
tadvanaf7746cd2019-10-04 16:02:56 -070072// Build a static library to help mocking various car services in testing. This is meant to be used
73// for internal unit tests around the car service.
Dan Harms25fbf1b2019-07-25 16:09:17 -070074//####################################################################################
75android_library {
tadvanaf7746cd2019-10-04 16:02:56 -070076 name: "car-service-test-static-lib",
Dan Harms25fbf1b2019-07-25 16:09:17 -070077
78 srcs: car_service_sources,
79
80 resource_dirs: ["res"],
81
82 libs: [
83 "android.car",
84 "car-frameworks-service",
85 ],
86
tadvanaf7746cd2019-10-04 16:02:56 -070087 static_libs: common_lib_deps,
88
89 min_sdk_version: "25",
90
91 product_variables: {
92 pdk: {
93 enabled: false,
94 },
95 },
96}
97
98//####################################################################################
99// Build a library to help generate a testing library for external apps.
100// We do not want to use statically linked libraries, as this will bloat the output jar with classes
101// that can conflict with the user's environment.
102//####################################################################################
103android_library {
104 name: "car-service-test-lib",
105
106 srcs: car_service_sources,
107
108 resource_dirs: ["res"],
109
110 libs: common_lib_deps + [
111 "android.car",
112 "car-frameworks-service",
Dan Harms25fbf1b2019-07-25 16:09:17 -0700113 ],
114
115 min_sdk_version: "25",
116
117 product_variables: {
118 pdk: {
119 enabled: false,
120 },
121 },
122}
tadvanaf7746cd2019-10-04 16:02:56 -0700123