blob: 8d719929d4f0c4d6ba4668d13b2a0c1f46ff4d0d [file] [log] [blame]
// 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"],
}