blob: da3f47bfa828836dddcd31e9e009d59e013ba8f4 [file] [log] [blame]
// 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.
package {
default_applicable_licenses: ["Android-Apache-2.0"],
}
android_library {
name: "car-ui-lib",
sdk_version: "system_current",
min_sdk_version: "28",
srcs: ["car-ui-lib/src/main/java/**/*.java"],
manifest: "car-ui-lib/AndroidManifest.xml",
resource_dirs: ["car-ui-lib/src/main/res"],
optimize: {
enabled: false,
},
libs: ["android.car-stubs"],
static_libs: [
"androidx.annotation_annotation",
"androidx.appcompat_appcompat",
"androidx-constraintlayout_constraintlayout",
"androidx.preference_preference",
"androidx.recyclerview_recyclerview",
"androidx-constraintlayout_constraintlayout-solver",
"androidx.asynclayoutinflater_asynclayoutinflater",
],
}
// User this if your project includes overlayable.xml
android_library {
name: "car-ui-lib-overlayable",
sdk_version: "system_current",
min_sdk_version: "28",
manifest: "car-ui-lib/AndroidManifest.xml",
resource_dirs: [
"car-ui-lib/src/main/res-overlayable"
],
static_libs: [
"car-ui-lib",
],
// This is also needed for `car-ui-lib` build target.
// But it's not in explicitly added to the build rule,
// Because it's hardcoded in apex.go file under Soong.
apex_available: [
"com.android.permission"
],
}
android_app {
name: "car-ui-lib-sharedlibrary",
srcs: ["sharedlibrary/src/main/java/**/*.java"],
manifest: "sharedlibrary/AndroidManifest.xml",
resource_dirs: ["sharedlibrary/src/main/res"],
visibility: [
"//visibility:private",
],
platform_apis: true,
aaptflags: ["--shared-lib"],
optimize: {
enabled: false,
},
}
android_library {
name: "car-ui-lib-testing-support",
sdk_version: "system_current",
min_sdk_version: "28",
manifest: "car-ui-lib/AndroidManifest.xml",
srcs: [
"tests/baselayouttests/src/**/*.java",
],
optimize: {
enabled: false,
},
libs: ["android.car-stubs"],
static_libs: [
"car-ui-lib",
"Robolectric_all-target",
],
}
android_test {
name: "CarUILibUnitTests",
certificate: "platform",
libs: [
"android.test.runner",
"android.test.base",
"android.car"
],
manifest: "car-ui-lib/src/androidTest/AndroidManifest.xml",
resource_dirs: ["car-ui-lib/src/androidTest/res"],
// Include all test java files.
srcs: ["car-ui-lib/src/androidTest/java/**/*.java"],
static_libs: [
"androidx.test.rules",
"androidx.test.espresso.core",
"androidx.test.espresso.contrib",
"androidx.test.ext.junit",
"car-ui-lib",
"platform-test-annotations",
"mockito-target-inline-minus-junit4",
"truth-prebuilt",
],
jni_libs: [
// For mockito extended
"libdexmakerjvmtiagent",
"libstaticjvmtiagent",
],
platform_apis: true,
test_suites: ["device-tests"],
}
android_app {
name: "PaintBooth",
srcs: [
"paintbooth/src/**/*.java",
"paintbooth/src/**/*.kt",
],
required: ["privapp_whitelist_com.android.car.ui.paintbooth"],
manifest: "paintbooth/AndroidManifest.xml",
resource_dirs: ["paintbooth/src/main/res", "paintbooth/src/main/res-public"],
platform_apis: true,
certificate: "platform",
privileged: true,
static_libs: [
"car-ui-lib",
"android.car.userlib",
"guava",
"gson-prebuilt-jar",
],
optimize: {
enabled: false,
},
dex_preopt: {
enabled: false,
},
product_variables: {
pdk: {
enabled: false,
},
},
export_package_resources: true,
}