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 17LOCAL_PATH := $(my-dir) 18 19########################################################### 20# Variant: Privileged app upgrade 21 22include $(CLEAR_VARS) 23# this needs to be a privileged application 24LOCAL_PRIVILEGED_MODULE := true 25 26LOCAL_MODULE_TAGS := optional 27LOCAL_SDK_VERSION := current 28LOCAL_PROGUARD_ENABLED := disabled 29LOCAL_DEX_PREOPT := false 30 31LOCAL_PACKAGE_NAME := CtsShimPrivUpgrade 32 33LOCAL_MANIFEST_FILE := shim_priv_upgrade/AndroidManifest.xml 34 35include $(BUILD_PACKAGE) 36my_shim_priv_upgrade_apk := $(LOCAL_BUILT_MODULE) 37 38########################################################### 39# Variant: Privileged app 40 41include $(CLEAR_VARS) 42# this needs to be a privileged application 43LOCAL_PRIVILEGED_MODULE := true 44 45LOCAL_MODULE_TAGS := optional 46LOCAL_SDK_VERSION := current 47LOCAL_PROGUARD_ENABLED := disabled 48LOCAL_DEX_PREOPT := false 49 50LOCAL_PACKAGE_NAME := CtsShimPriv 51 52# Generate the upgrade key by taking the hash of the built CtsShimPrivUpgrade apk 53gen := $(call intermediates-dir-for,APPS,$(LOCAL_PACKAGE_NAME),,true)/AndroidManifest.xml 54$(gen): PRIVATE_CUSTOM_TOOL = sed -e "s/__HASH__/`sha512sum $(PRIVATE_INPUT_APK) | cut -d' ' -f1`/" $< >$@ 55$(gen): PRIVATE_INPUT_APK := $(my_shim_priv_upgrade_apk) 56$(gen): $(LOCAL_PATH)/shim_priv/AndroidManifest.xml $(my_shim_priv_upgrade_apk) 57 $(transform-generated-source) 58 59my_shim_priv_upgrade_apk := 60 61LOCAL_FULL_MANIFEST_FILE := $(gen) 62 63include $(BUILD_PACKAGE) 64 65########################################################### 66# Variant: Privileged app upgrade w/ the wrong SHA 67 68include $(CLEAR_VARS) 69# this needs to be a privileged application 70LOCAL_PRIVILEGED_MODULE := true 71 72LOCAL_MODULE_TAGS := optional 73LOCAL_SDK_VERSION := current 74LOCAL_PROGUARD_ENABLED := disabled 75LOCAL_DEX_PREOPT := false 76# anything to make this package's SHA different from CtsShimPrivUpgrade 77LOCAL_AAPT_FLAGS := --version-name WrongSHA 78 79LOCAL_PACKAGE_NAME := CtsShimPrivUpgradeWrongSHA 80 81LOCAL_MANIFEST_FILE := shim_priv_upgrade/AndroidManifest.xml 82 83include $(BUILD_PACKAGE) 84 85 86########################################################### 87# Variant: System app 88 89include $(CLEAR_VARS) 90 91LOCAL_MODULE_TAGS := optional 92LOCAL_SDK_VERSION := current 93LOCAL_PROGUARD_ENABLED := disabled 94LOCAL_DEX_PREOPT := false 95 96LOCAL_PACKAGE_NAME := CtsShim 97 98LOCAL_MANIFEST_FILE := shim/AndroidManifest.xml 99 100include $(BUILD_PACKAGE) 101 102