aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2019-05-04 00:22:29 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2019-05-04 00:22:29 +0000
commitd4079c5019c9de8cc06d64e290518a5e2e743f75 (patch)
tree4deb0476ed41e736d34f0954bf1c209f6e6c3975
parent37eadacc20aa52e9a2e5fd8681ab1b737196ab68 (diff)
parent74889a1681c43a73f3ebebcef6fd978ba6db89be (diff)
downloadbuild-d4079c5019c9de8cc06d64e290518a5e2e743f75.tar.gz
Merge "Support PRESIGNED in soong_app_prebuilt.mk"
-rw-r--r--core/soong_app_prebuilt.mk10
1 files changed, 9 insertions, 1 deletions
diff --git a/core/soong_app_prebuilt.mk b/core/soong_app_prebuilt.mk
index 8153d78d7b..d873cc41ff 100644
--- a/core/soong_app_prebuilt.mk
+++ b/core/soong_app_prebuilt.mk
@@ -129,7 +129,15 @@ my_prebuilt_jni_libs :=
my_2nd_arch_prefix :=
PACKAGES := $(PACKAGES) $(LOCAL_MODULE)
-ifdef LOCAL_CERTIFICATE
+ifeq ($(LOCAL_CERTIFICATE),PRESIGNED)
+ # The magic string "PRESIGNED" means this package is already checked
+ # signed with its release key.
+ #
+ # By setting .CERTIFICATE but not .PRIVATE_KEY, this package will be
+ # mentioned in apkcerts.txt (with certificate set to "PRESIGNED")
+ # but the dexpreopt process will not try to re-sign the app.
+ PACKAGES.$(LOCAL_MODULE).CERTIFICATE := PRESIGNED
+else ifneq ($(LOCAL_CERTIFICATE),)
PACKAGES.$(LOCAL_MODULE).CERTIFICATE := $(LOCAL_CERTIFICATE)
PACKAGES.$(LOCAL_MODULE).PRIVATE_KEY := $(patsubst %.x509.pem,%.pk8,$(LOCAL_CERTIFICATE))
endif