| // Copyright (C) 2019 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 Car service. |
| |
| genrule { |
| name: "statslog-Car-java-gen", |
| tools: ["stats-log-api-gen"], |
| cmd: "$(location stats-log-api-gen) --java $(out) --module car --javaPackage com.android.car" |
| + " --javaClass CarStatsLog", |
| out: ["com/android/car/CarStatsLog.java"], |
| } |
| |
| car_service_sources = [ |
| "src/**/*.java", |
| ":statslog-Car-java-gen", |
| ] |
| |
| common_lib_deps = [ |
| "android.car.userlib", |
| "android.car.watchdoglib", |
| "android.hidl.base-V1.0-java", |
| "android.hardware.automotive.audiocontrol-V1.0-java", |
| "android.hardware.automotive.vehicle-V2.0-java", |
| "android.hardware.health-V1.0-java", |
| "android.hardware.health-V2.0-java", |
| "android.hardware.automotive.occupant_awareness-java", |
| "vehicle-hal-support-lib", |
| "car-systemtest", |
| "com.android.car.procfsinspector-client", |
| "blestream-protos", |
| "SettingsLib", |
| "androidx.preference_preference", |
| "EncryptionRunner", |
| ] |
| |
| android_app { |
| name: "CarService", |
| |
| srcs: car_service_sources, |
| |
| resource_dirs: ["res"], |
| |
| platform_apis: true, |
| |
| // Each update should be signed by OEMs |
| certificate: "platform", |
| privileged: true, |
| |
| optimize: { |
| proguard_flags_files: ["proguard.flags"], |
| enabled: false, |
| }, |
| |
| libs: ["android.car"], |
| |
| static_libs: common_lib_deps + [ |
| "car-frameworks-service", |
| ], |
| |
| required: ["privapp_whitelist_com.android.car"], |
| |
| // Disable build in PDK, missing aidl import breaks build |
| product_variables: { |
| pdk: { |
| enabled: false, |
| }, |
| }, |
| } |
| |
| java_library { |
| |
| name: "car-service-common-util-static-lib", |
| |
| srcs: [ |
| "src/com/android/car/CarServiceBase.java", |
| "src/com/android/car/CarServiceUtils.java", |
| "src/com/android/car/CarLog.java", |
| "src/com/android/car/Utils.java", |
| ], |
| |
| product_variables: { |
| pdk: { |
| enabled: false, |
| }, |
| }, |
| } |
| |
| //#################################################################################### |
| // Build a static library to help mocking various car services in testing. This is meant to be used |
| // for internal unit tests around the car service. |
| //#################################################################################### |
| android_library { |
| name: "car-service-test-static-lib", |
| |
| srcs: car_service_sources, |
| |
| resource_dirs: ["res"], |
| |
| libs: [ |
| "android.car", |
| "car-frameworks-service", |
| ], |
| |
| static_libs: common_lib_deps, |
| |
| min_sdk_version: "25", |
| |
| product_variables: { |
| pdk: { |
| enabled: false, |
| }, |
| }, |
| } |
| |
| //#################################################################################### |
| // Build a library to help generate a testing library for external apps. |
| // We do not want to use statically linked libraries, as this will bloat the output jar with classes |
| // that can conflict with the user's environment. |
| //#################################################################################### |
| android_library { |
| name: "car-service-test-lib", |
| |
| srcs: car_service_sources, |
| |
| resource_dirs: ["res"], |
| |
| libs: common_lib_deps + [ |
| "android.car", |
| "car-frameworks-service", |
| ], |
| |
| min_sdk_version: "25", |
| |
| product_variables: { |
| pdk: { |
| enabled: false, |
| }, |
| }, |
| } |
| |