1// 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 15package { 16 default_applicable_licenses: ["Android-Apache-2.0"], 17} 18 19android_library { 20 name: "car-ui-lib-resources", 21 22 sdk_version: "current", 23 min_sdk_version: "28", 24 target_sdk_version: "30", 25 26 manifest: "car-ui-lib/src/main/AndroidManifest.xml", 27 resource_dirs: [ 28 "car-ui-lib/src/main/res", 29 "car-ui-lib/src/main/res-overlayable", 30 "car-ui-lib/src/main/res-private" 31 ], 32 33 static_libs: [ 34 "androidx.appcompat_appcompat", 35 "androidx-constraintlayout_constraintlayout", 36 "androidx.preference_preference", 37 "androidx.recyclerview_recyclerview", 38 "car-rotary-lib-resources", 39 ], 40 apex_available: [ 41 "com.android.permission", 42 "//apex_available:platform", 43 ], 44} 45 46android_library { 47 name: "car-ui-lib", 48 49 sdk_version: "current", 50 min_sdk_version: "28", 51 target_sdk_version: "30", 52 53 manifest: "car-ui-lib/src/main/AndroidManifest.xml", 54 srcs: ["car-ui-lib/src/main/java/**/*.java"], 55 optimize: { 56 proguard_flags_files: [ 57 "car-ui-lib/proguard-rules.pro", 58 "car-ui-lib/proguard-rules-platform.pro", 59 ], 60 }, 61 libs: [ 62 "android.car-stubs", 63 "car-ui-lib-oem-apis", 64 ], 65 static_libs: [ 66 "androidx.annotation_annotation", 67 "androidx.appcompat_appcompat", 68 "androidx-constraintlayout_constraintlayout", 69 "androidx.preference_preference", 70 "androidx.recyclerview_recyclerview", 71 "androidx-constraintlayout_constraintlayout-solver", 72 "androidx.asynclayoutinflater_asynclayoutinflater", 73 "car-ui-lib-resources", 74 "car-rotary-lib", 75 ], 76} 77 78android_library { 79 name: "car-ui-lib-testing-support", 80 81 sdk_version: "current", 82 min_sdk_version: "28", 83 target_sdk_version: "30", 84 85 manifest: "car-ui-lib/src/main/AndroidManifest.xml", 86 srcs: [ 87 "tests/baselayouttests/src/**/*.java", 88 ], 89 optimize: { 90 enabled: false, 91 }, 92 libs: ["android.car-stubs"], 93 static_libs: [ 94 "car-ui-lib", 95 "Robolectric_all-target", 96 ], 97} 98 99android_library { 100 name: "car-ui-lib-testing", 101 102 sdk_version: "current", 103 min_sdk_version: "28", 104 target_sdk_version: "30", 105 106 manifest: "car-ui-lib/src/androidTest/AndroidManifest.xml", 107 srcs: [ 108 "car-ui-lib/src/androidTest/java/**/actions/*.java", 109 "car-ui-lib/src/androidTest/java/**/matchers/*.java", 110 ], 111 resource_dirs: [ 112 "car-ui-lib/src/androidTest/res", 113 ], 114 optimize: { 115 enabled: false, 116 }, 117 static_libs: [ 118 "car-ui-lib", 119 "androidx.test.rules", 120 "androidx.test.espresso.core", 121 "androidx.test.espresso.contrib", 122 "androidx.test.ext.junit", 123 ], 124 apex_available: [ 125 "com.android.permission", 126 "//apex_available:platform", 127 ], 128} 129 130android_test { 131 name: "CarUILibUnitTests", 132 certificate: "platform", 133 libs: [ 134 "android.test.runner", 135 "android.test.base", 136 "android.car-stubs", 137 "android.test.mock.stubs" 138 ], 139 manifest: "car-ui-lib/src/androidTest/AndroidManifest.xml", 140 resource_dirs: ["car-ui-lib/src/androidTest/res"], 141 // Include all test java files. 142 srcs: ["car-ui-lib/src/androidTest/java/**/*.java"], 143 static_libs: [ 144 "androidx.test.rules", 145 "androidx.test.espresso.core", 146 "androidx.test.espresso.contrib", 147 "androidx.test.ext.junit", 148 "car-ui-lib", 149 "platform-test-annotations", 150 "mockito-target-inline-minus-junit4", 151 "truth-prebuilt", 152 ], 153 jni_libs: [ 154 // For mockito extended 155 "libdexmakerjvmtiagent", 156 "libstaticjvmtiagent", 157 ], 158 required: ["car-ui-lib-plugin"], 159 platform_apis: true, 160 test_suites: ["device-tests"], 161} 162 163android_app { 164 name: "PaintBooth", 165 166 manifest: "paintbooth/src/main/AndroidManifest.xml", 167 srcs: [ 168 "paintbooth/src/**/*.java", 169 "paintbooth/src/**/*.kt", 170 ], 171 resource_dirs: [ 172 "paintbooth/src/main/res", 173 "paintbooth/src/main/res-overlayable", 174 "paintbooth/src/main/res-public", 175 ], 176 177 required: ["allowed_privapp_com.android.car.ui.paintbooth"], 178 179 libs: ["android.car-stubs"], 180 static_libs: [ 181 "car-ui-lib", 182 "guava", 183 "gson-prebuilt-jar", 184 ], 185 186 platform_apis: true, 187 certificate: "platform", 188 privileged: true, 189 190 export_package_resources: true, 191} 192