| // 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. |
| |
| package { |
| default_applicable_licenses: ["Android-Apache-2.0"], |
| } |
| |
| filegroup { |
| name: "rotary-service-proto-source", |
| srcs: [ |
| "proto/car_rotary_controller.proto", |
| ], |
| } |
| gensrcs { |
| name: "rotary-service-javastream-protos", |
| depfile: true, |
| |
| tools: [ |
| "aprotoc", |
| "protoc-gen-javastream", |
| "soong_zip", |
| ], |
| |
| cmd: "mkdir -p $(genDir)/$(in) " + |
| "&& $(location aprotoc) " + |
| " --plugin=$(location protoc-gen-javastream) " + |
| " --dependency_out=$(depfile) " + |
| " --javastream_out=$(genDir)/$(in) " + |
| " -Iexternal/protobuf/src " + |
| " -I . " + |
| " $(in) " + |
| "&& $(location soong_zip) -jar -o $(out) -C $(genDir)/$(in) -D $(genDir)/$(in)", |
| |
| srcs: [ |
| ":rotary-service-proto-source", |
| ], |
| output_extension: "srcjar", |
| } |
| |
| android_app { |
| name: "CarRotaryController", |
| srcs: [ |
| "src/**/*.java", |
| ":rotary-service-javastream-protos", |
| ], |
| resource_dirs: ["res"], |
| |
| // This app uses allowlisted privileged permissions. |
| required: ["allowed_privapp_com.android.car.rotary"], |
| |
| // Because it uses a platform API (CarInputManager). |
| platform_apis: true, |
| |
| // This app should be platform signed because it requires |
| // android.car.permission.CAR_MONITOR_INPUT permission, which is of type "signature". |
| certificate: "platform", |
| |
| // This app uses allowlisted privileged permissions. |
| privileged: true, |
| |
| optimize: { |
| enabled: false, |
| }, |
| dex_preopt: { |
| enabled: false, |
| }, |
| libs: [ |
| "android.car", |
| ], |
| static_libs: [ |
| "car-ui-lib", |
| ], |
| product_variables: { |
| pdk: { |
| enabled: false, |
| }, |
| }, |
| } |
| |
| android_library { |
| name: "CarRotaryControllerForUnitTesting", |
| |
| manifest: "tests/unit/AndroidManifest.xml", |
| |
| srcs: [ |
| "src/**/*.java", |
| ":rotary-service-javastream-protos", |
| ], |
| |
| resource_dirs: [ |
| "tests/unit/res", |
| "res", |
| ], |
| |
| platform_apis: true, |
| |
| optimize: { |
| enabled: false, |
| }, |
| dex_preopt: { |
| enabled: false, |
| }, |
| libs: [ |
| "android.car", |
| ], |
| static_libs: [ |
| "car-ui-lib", |
| ], |
| product_variables: { |
| pdk: { |
| enabled: false, |
| }, |
| }, |
| |
| aaptflags: ["--extra-packages com.android.car.rotary"], |
| } |