1# 2# Copyright (C) 2016 The Android Open-Source Project 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16 17# Common make file for all car builds 18 19PRODUCT_PUBLIC_SEPOLICY_DIRS += packages/services/Car/car_product/sepolicy/public 20PRODUCT_PRIVATE_SEPOLICY_DIRS += packages/services/Car/car_product/sepolicy/private 21ifeq ($(ENABLE_CARTELEMETRY_SERVICE), true) 22PRODUCT_PRIVATE_SEPOLICY_DIRS += packages/services/Car/car_product/sepolicy/cartelemetry 23endif 24 25PRODUCT_PACKAGES += \ 26 Bluetooth \ 27 CarActivityResolver \ 28 CarDeveloperOptions \ 29 CarSettingsIntelligence \ 30 CarManagedProvisioning \ 31 OneTimeInitializer \ 32 CarProvision \ 33 StatementService \ 34 SystemUpdater 35 36PRODUCT_PACKAGES += \ 37 pppd \ 38 screenrecord 39 40# This is for testing 41ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 42PRODUCT_PACKAGES += \ 43 DefaultStorageMonitoringCompanionApp \ 44 EmbeddedKitchenSinkApp \ 45 GarageModeTestApp \ 46 ExperimentalCarService \ 47 BugReportApp \ 48 NetworkPreferenceApp \ 49 SampleCustomInputService \ 50 AdasLocationTestApp \ 51 curl \ 52 CarTelemetryApp \ 53 RailwayReferenceApp \ 54 55# SEPolicy for test apps / services 56BOARD_SEPOLICY_DIRS += packages/services/Car/car_product/sepolicy/test 57endif 58 59# ClusterOsDouble is the testing app to test Cluster2 framework and it can handle Cluster VHAL 60# and do some Cluster OS role. 61ifeq ($(ENABLE_CLUSTER_OS_DOUBLE), true) 62PRODUCT_PACKAGES += ClusterHomeSample ClusterOsDouble 63else 64# DirectRenderingCluster is the sample app for the old Cluster framework. 65PRODUCT_PACKAGES += DirectRenderingCluster 66endif # ENABLE_CLUSTER_OS_DOUBLE 67 68PRODUCT_COPY_FILES += \ 69 frameworks/av/media/libeffects/data/audio_effects.conf:system/etc/audio_effects.conf 70 71PRODUCT_PROPERTY_OVERRIDES += \ 72 ro.carrier=unknown \ 73 ro.hardware.type=automotive \ 74 75# Set default Bluetooth profiles 76TARGET_SYSTEM_PROP += \ 77 packages/services/Car/car_product/properties/bluetooth.prop 78 79PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ 80 config.disable_systemtextclassifier=true 81 82### 83### Suggested values for multi-user properties - can be overridden 84### 85 86# Enable headless system user mode 87PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ 88 ro.fw.mu.headless_system_user?=true 89 90# Enable user pre-creation 91PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ 92 android.car.number_pre_created_users?=1 \ 93 android.car.number_pre_created_guests?=1 94 95# Enable User HAL integration 96# NOTE: when set to true, VHAL must also implement the user-related properties, 97# otherwise CarService will ignore it 98PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ 99 android.car.user_hal_enabled?=true 100 101### end of multi-user properties ### 102 103# Overlay for Google network and fused location providers 104$(call inherit-product, device/sample/products/location_overlay.mk) 105$(call inherit-product-if-exists, frameworks/webview/chromium/chromium.mk) 106$(call inherit-product, packages/services/Car/car_product/build/car_base.mk) 107 108# Overrides 109PRODUCT_BRAND := generic 110PRODUCT_DEVICE := generic 111PRODUCT_NAME := generic_car_no_telephony 112 113PRODUCT_IS_AUTOMOTIVE := true 114 115PRODUCT_PROPERTY_OVERRIDES := \ 116 ro.config.ringtone=Girtab.ogg \ 117 ro.config.notification_sound=Tethys.ogg \ 118 ro.config.alarm_alert=Oxygen.ogg \ 119 $(PRODUCT_PROPERTY_OVERRIDES) \ 120 121PRODUCT_PROPERTY_OVERRIDES += \ 122 keyguard.no_require_sim=true 123 124# TODO(b/205189147): Remove the following change after the proper fix is landed. 125# Uses the local KeyGuard animation to resolve TaskView misalignment issue after display-on. 126PRODUCT_SYSTEM_PROPERTIES += \ 127 persist.wm.enable_remote_keyguard_animation=0 128 129# TODO(b/198516172): Find a better location to add this read only property 130# It is added here to check the functionality, will be updated in next CL 131PRODUCT_SYSTEM_PROPERTIES += \ 132 ro.android.car.carservice.overlay.packages?=com.android.car.resources.vendor;com.google.android.car.resources.vendor; 133 134# vendor layer can override this 135PRODUCT_SYSTEM_PROPERTIES += \ 136 ro.android.car.carservice.package?=com.android.car.updatable 137 138# Update with PLATFORM_VERSION_MINOR_INT update 139PRODUCT_SYSTEM_PROPERTIES += ro.android.car.version.platform_minor=3 140 141# Automotive specific packages 142PRODUCT_PACKAGES += \ 143 CarFrameworkPackageStubs \ 144 CarService \ 145 CarShell \ 146 CarDialerApp \ 147 CarRadioApp \ 148 OverviewApp \ 149 CarLauncher \ 150 CarSystemUI \ 151 LocalMediaPlayer \ 152 CarMediaApp \ 153 CarMessengerApp \ 154 CarHTMLViewer \ 155 CarHvacApp \ 156 CarMapsPlaceholder \ 157 CarLatinIME \ 158 CarSettings \ 159 CarUsbHandler \ 160 RotaryIME \ 161 RotaryPlayground \ 162 android.car.builtin \ 163 car-frameworks-service \ 164 com.android.car.procfsinspector \ 165 com.android.permission \ 166 167# RROs 168PRODUCT_PACKAGES += \ 169 CarPermissionControllerRRO \ 170 171# System Server components 172# Order is important: if X depends on Y, then Y should precede X on the list. 173PRODUCT_SYSTEM_SERVER_JARS += car-frameworks-service 174# TODO: make the order optimal by appending 'car-frameworks-service' at the end 175# after its dependency 'services'. Currently the order is violated because this 176# makefile is included before AOSP makefile. 177PRODUCT_BROKEN_SUBOPTIMAL_ORDER_OF_SYSTEM_SERVER_JARS := true 178 179# Boot animation 180PRODUCT_COPY_FILES += \ 181 packages/services/Car/car_product/bootanimations/bootanimation-832.zip:system/media/bootanimation.zip 182 183PRODUCT_LOCALES := \ 184 en_US \ 185 af_ZA \ 186 am_ET \ 187 ar_EG ar_XB \ 188 as_IN \ 189 az_AZ \ 190 be_BY \ 191 bg_BG \ 192 bn_BD \ 193 bs_BA \ 194 ca_ES \ 195 cs_CZ \ 196 da_DK \ 197 de_DE \ 198 el_GR \ 199 en_AU en_CA en_GB en_IN en_XA \ 200 es_ES es_US \ 201 et_EE \ 202 eu_ES \ 203 fa_IR \ 204 fi_FI \ 205 fil_PH \ 206 fr_CA fr_FR \ 207 gl_ES \ 208 gu_IN \ 209 hi_IN \ 210 hr_HR \ 211 hu_HU \ 212 hy_AM \ 213 id_ID \ 214 is_IS \ 215 it_IT \ 216 iw_IL \ 217 ja_JP \ 218 ka_GE \ 219 kk_KZ \ 220 km_KH km_MH \ 221 kn_IN \ 222 ko_KR \ 223 ky_KG \ 224 lo_LA \ 225 lv_LV \ 226 lt_LT \ 227 mk_MK \ 228 ml_IN \ 229 mn_MN \ 230 mr_IN \ 231 ms_MY \ 232 my_MM \ 233 ne_NP \ 234 nl_NL \ 235 no_NO \ 236 or_IN \ 237 pa_IN \ 238 pl_PL \ 239 pt_BR pt_PT \ 240 ro_RO \ 241 ru_RU \ 242 si_LK \ 243 sk_SK \ 244 sl_SI \ 245 sq_AL \ 246 sr_RS \ 247 sv_SE \ 248 sw_TZ \ 249 ta_IN \ 250 te_IN \ 251 th_TH \ 252 tr_TR \ 253 uk_UA \ 254 ur_PK \ 255 uz_UZ \ 256 vi_VN \ 257 zh_CN zh_HK zh_TW \ 258 zu_ZA 259 260PRODUCT_BOOT_JARS += \ 261 android.car.builtin 262 263USE_CAR_FRAMEWORK_APEX ?= true 264 265ifeq ($(USE_CAR_FRAMEWORK_APEX),true) 266 PRODUCT_PACKAGES += com.android.car.framework 267 268 PRODUCT_APEX_BOOT_JARS += com.android.car.framework:android.car-module 269 PRODUCT_APEX_SYSTEM_SERVER_JARS += com.android.car.framework:car-frameworks-service-module 270 271 PRODUCT_HIDDENAPI_STUBS := android.car-module.stubs 272 PRODUCT_HIDDENAPI_STUBS_SYSTEM := android.car-module.stubs.system 273 PRODUCT_HIDDENAPI_STUBS_TEST := android.car-module.stubs.test 274else # !USE_CAR_FRAMEWORK_APEX 275 $(warning NOT using CarFramework APEX) 276 PRODUCT_BOOT_JARS += android.car 277 PRODUCT_PACKAGES += android.car CarServiceUpdatableNonModule car-frameworks-service-module 278 PRODUCT_SYSTEM_SERVER_JARS += car-frameworks-service-module 279 280 PRODUCT_HIDDENAPI_STUBS := android.car-stubs-dex 281 PRODUCT_HIDDENAPI_STUBS_SYSTEM := android.car-system-stubs-dex 282 PRODUCT_HIDDENAPI_STUBS_TEST := android.car-test-stubs-dex 283endif # USE_CAR_FRAMEWORK_APEX 284 285# Disable Prime Shader Cache in SurfaceFlinger to make it available faster 286PRODUCT_PROPERTY_OVERRIDES += \ 287 service.sf.prime_shader_cache=0 288