blob: 65aabffa99d8499f0e321bd66632c5790e828869 [file] [log] [blame]
Colin Crosse05e6df2017-11-15 21:35:27 -08001# App prebuilt coming from Soong.
2# Extra inputs:
3# LOCAL_SOONG_RESOURCE_EXPORT_PACKAGE
4
5ifneq ($(LOCAL_MODULE_MAKEFILE),$(SOONG_ANDROID_MK))
6 $(call pretty-error,soong_app_prebuilt.mk may only be used from Soong)
7endif
8
9LOCAL_MODULE_SUFFIX := .apk
10LOCAL_BUILT_MODULE_STEM := package.apk
11
12#######################################
13include $(BUILD_SYSTEM)/base_rules.mk
14#######################################
15
Colin Cross75a698b2017-12-14 13:19:46 -080016full_classes_jar := $(intermediates.COMMON)/classes.jar
17full_classes_pre_proguard_jar := $(intermediates.COMMON)/classes-pre-proguard.jar
18full_classes_header_jar := $(intermediates.COMMON)/classes-header.jar
19
20$(eval $(call copy-one-file,$(LOCAL_SOONG_CLASSES_JAR),$(full_classes_jar)))
21$(eval $(call copy-one-file,$(LOCAL_SOONG_CLASSES_JAR),$(full_classes_pre_proguard_jar)))
22
Colin Cross20e06d22018-01-02 13:16:43 -080023ifdef LOCAL_SOONG_JACOCO_REPORT_CLASSES_JAR
24 $(eval $(call copy-one-file,$(LOCAL_SOONG_JACOCO_REPORT_CLASSES_JAR),\
25 $(intermediates.COMMON)/jacoco-report-classes.jar))
26 $(call add-dependency,$(LOCAL_BUILT_MODULE),\
27 $(intermediates.COMMON)/jacoco-report-classes.jar)
28endif
29
Colin Cross5e0986c2017-12-27 19:46:02 -080030ifdef LOCAL_SOONG_PROGUARD_DICT
31 $(eval $(call copy-one-file,$(LOCAL_SOONG_PROGUARD_DICT),\
32 $(intermediates.COMMON)/proguard_dictionary))
33 $(call add-dependency,$(LOCAL_BUILT_MODULE),\
34 $(intermediates.COMMON)/proguard_dictionary)
35endif
36
Colin Cross75a698b2017-12-14 13:19:46 -080037ifneq ($(TURBINE_DISABLED),false)
38ifdef LOCAL_SOONG_HEADER_JAR
39$(eval $(call copy-one-file,$(LOCAL_SOONG_HEADER_JAR),$(full_classes_header_jar)))
40else
41$(eval $(call copy-one-file,$(full_classes_jar),$(full_classes_header_jar)))
42endif
43endif # TURBINE_DISABLED != false
44
45
Colin Crosse05e6df2017-11-15 21:35:27 -080046$(eval $(call copy-one-file,$(LOCAL_PREBUILT_MODULE_FILE),$(LOCAL_BUILT_MODULE)))
47
48ifdef LOCAL_SOONG_RESOURCE_EXPORT_PACKAGE
49resource_export_package := $(intermediates.COMMON)/package-export.apk
50resource_export_stamp := $(intermediates.COMMON)/src/R.stamp
51
52$(resource_export_package): PRIVATE_STAMP := $(resource_export_stamp)
53$(resource_export_package): .KATI_IMPLICIT_OUTPUTS := $(resource_export_stamp)
54$(resource_export_package): $(LOCAL_SOONG_RESOURCE_EXPORT_PACKAGE)
55 @echo "Copy: $$@"
56 $(copy-file-to-target)
57 touch $(PRIVATE_STAMP)
58
59endif # LOCAL_SOONG_RESOURCE_EXPORT_PACKAGE
60
61java-dex: $(LOCAL_SOONG_DEX_JAR)
62
63ifdef LOCAL_DEX_PREOPT
64# defines built_odex along with rule to install odex
65include $(BUILD_SYSTEM)/dex_preopt_odex_install.mk
66
67$(built_odex): $(LOCAL_SOONG_DEX_JAR)
68 $(call dexpreopt-one-file,$<,$@)
69endif
70
Colin Crossaec36402017-12-14 11:20:27 -080071PACKAGES := $(PACKAGES) $(LOCAL_MODULE)
72ifdef LOCAL_CERTIFICATE
Colin Cross4e34ce02017-12-15 13:20:27 -080073 PACKAGES.$(LOCAL_MODULE).CERTIFICATE := $(LOCAL_CERTIFICATE)
74 PACKAGES.$(LOCAL_MODULE).PRIVATE_KEY := $(patsubst %.x509.pem,%.pk8,$(LOCAL_CERTIFICATE))
Colin Crossaec36402017-12-14 11:20:27 -080075endif
76
Colin Crosse05e6df2017-11-15 21:35:27 -080077ifndef LOCAL_IS_HOST_MODULE
78ifeq ($(LOCAL_SDK_VERSION),system_current)
79my_link_type := java:system
80my_warn_types := java:platform
81my_allowed_types := java:sdk java:system
82else ifneq ($(LOCAL_SDK_VERSION),)
83my_link_type := java:sdk
84my_warn_types := java:system java:platform
85my_allowed_types := java:sdk
86else
87my_link_type := java:platform
88my_warn_types :=
89my_allowed_types := java:sdk java:system java:platform
90endif
91
92my_link_deps :=
93my_2nd_arch_prefix := $(LOCAL_2ND_ARCH_VAR_PREFIX)
94my_common := COMMON
95include $(BUILD_SYSTEM)/link_type.mk
96endif # !LOCAL_IS_HOST_MODULE
97
Colin Cross8c5ef242017-11-30 20:11:22 -080098ifdef LOCAL_SOONG_RRO_DIRS
99 $(call append_enforce_rro_sources, \
100 $(my_register_name), \
101 false, \
102 $(LOCAL_FULL_MANIFEST_FILE), \
103 $(LOCAL_EXPORT_PACKAGE_RESOURCES), \
104 $(LOCAL_SOONG_RRO_DIRS))
105endif