182b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# This file defines the rule to fuse the platform.zip into the current PDK build. 282b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 382b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang.PHONY: pdk fusion 482b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangpdk fusion: $(DEFAULT_GOAL) 582b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 682b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# What to build: 782b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# pdk fusion if: 84da8e127c736a2e97d35f8767b8a409d2bc84cc0Keun young Park# 1) PDK_FUSION_PLATFORM_ZIP is passed in from the environment 982b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# or 104da8e127c736a2e97d35f8767b8a409d2bc84cc0Keun young Park# 2) the platform.zip exists in the default location 1182b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# or 1282b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# 3) fusion is a command line build goal, 1382b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# PDK_FUSION_PLATFORM_ZIP is needed anyway, then do we need the 'fusion' goal? 1482b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# otherwise pdk only if: 1582b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# 1) pdk is a command line build goal 1682b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# or 1782b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# 2) TARGET_BUILD_PDK is passed in from the environment 1882b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 194da8e127c736a2e97d35f8767b8a409d2bc84cc0Keun young Park# if PDK_FUSION_PLATFORM_ZIP is specified, do not override. 204da8e127c736a2e97d35f8767b8a409d2bc84cc0Keun young Parkifndef PDK_FUSION_PLATFORM_ZIP 21072923238d277bb24ffc82073d3e11d13a4de2faChad Jones# Most PDK project paths should be using vendor/pdk/TARGET_DEVICE 22072923238d277bb24ffc82073d3e11d13a4de2faChad Jones# but some legacy ones (e.g. mini_armv7a_neon generic PDK) were setup 23072923238d277bb24ffc82073d3e11d13a4de2faChad Jones# with vendor/pdk/TARGET_PRODUCT. 243b4856e842d3aec88a4a040836ce23b5dbe8957dkeunyoung_pdk_fusion_default_platform_zip = $(wildcard \ 253b4856e842d3aec88a4a040836ce23b5dbe8957dkeunyoungvendor/pdk/$(TARGET_DEVICE)/$(TARGET_PRODUCT)-$(TARGET_BUILD_VARIANT)/platform/platform.zip \ 26072923238d277bb24ffc82073d3e11d13a4de2faChad Jonesvendor/pdk/$(TARGET_DEVICE)/$(patsubst aosp_%,full_%,$(TARGET_PRODUCT))-$(TARGET_BUILD_VARIANT)/platform/platform.zip \ 27072923238d277bb24ffc82073d3e11d13a4de2faChad Jonesvendor/pdk/$(TARGET_PRODUCT)/$(TARGET_PRODUCT)-$(TARGET_BUILD_VARIANT)/platform/platform.zip \ 28072923238d277bb24ffc82073d3e11d13a4de2faChad Jonesvendor/pdk/$(TARGET_PRODUCT)/$(patsubst aosp_%,full_%,$(TARGET_PRODUCT))-$(TARGET_BUILD_VARIANT)/platform/platform.zip) 293b4856e842d3aec88a4a040836ce23b5dbe8957dkeunyoungifneq (,$(_pdk_fusion_default_platform_zip)) 303b4856e842d3aec88a4a040836ce23b5dbe8957dkeunyoungPDK_FUSION_PLATFORM_ZIP := $(word 1, $(_pdk_fusion_default_platform_zip)) 3182b836fda6894ebfccccfbddc2ce3ee2718d862eYing WangTARGET_BUILD_PDK := true 323b4856e842d3aec88a4a040836ce23b5dbe8957dkeunyoung$(info $(PDK_FUSION_PLATFORM_ZIP) found, do a PDK fusion build.) 333b4856e842d3aec88a4a040836ce23b5dbe8957dkeunyoungendif # _pdk_fusion_default_platform_zip 344da8e127c736a2e97d35f8767b8a409d2bc84cc0Keun young Parkendif # !PDK_FUSION_PLATFORM_ZIP 3582b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 3682b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangifneq (,$(filter pdk fusion, $(MAKECMDGOALS))) 3782b836fda6894ebfccccfbddc2ce3ee2718d862eYing WangTARGET_BUILD_PDK := true 3882b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangifneq (,$(filter fusion, $(MAKECMDGOALS))) 3982b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangifndef PDK_FUSION_PLATFORM_ZIP 4082b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang $(error Specify PDK_FUSION_PLATFORM_ZIP to do a PDK fusion.) 4182b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangendif 4282b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangendif # fusion 4382b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangendif # pdk or fusion 4482b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 45c451a373a4f07ea37aba6a50c6169d251668ba32Colin CrossPDK_PLATFORM_JAVA_ZIP_JAVA_TARGET_LIB_DIR := 46c451a373a4f07ea37aba6a50c6169d251668ba32Colin CrossPDK_PLATFORM_JAVA_ZIP_JAVA_HOST_LIB_DIR := \ 47c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross host/common/obj/JAVA_LIBRARIES/bouncycastle-host_intermediates 48c451a373a4f07ea37aba6a50c6169d251668ba32Colin CrossPDK_PLATFORM_JAVA_ZIP_CONTENTS := 49c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross 50f4d1438d859bbbc289b55ba28c62de73f8c83fd5Keun young Parkifneq (,$(filter platform-java, $(MAKECMDGOALS))$(PDK_FUSION_PLATFORM_ZIP)) 51816b9fd4e22843c836543522464782bece1305b8Keun young Park# additional items to add to platform.zip for platform-java build 52816b9fd4e22843c836543522464782bece1305b8Keun young Park# For these dirs, add classes.jar and javalib.jar from the dir to platform.zip 53816b9fd4e22843c836543522464782bece1305b8Keun young Park# all paths under out dir 54c451a373a4f07ea37aba6a50c6169d251668ba32Colin CrossPDK_PLATFORM_JAVA_ZIP_JAVA_TARGET_LIB_DIR += \ 55816b9fd4e22843c836543522464782bece1305b8Keun young Park target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates \ 561e961acf0c203b62c535d509f7f41813e8b21a5aColin Cross target/common/obj/JAVA_LIBRARIES/core-libart_intermediates \ 57816b9fd4e22843c836543522464782bece1305b8Keun young Park target/common/obj/JAVA_LIBRARIES/core-junit_intermediates \ 58816b9fd4e22843c836543522464782bece1305b8Keun young Park target/common/obj/JAVA_LIBRARIES/ext_intermediates \ 59816b9fd4e22843c836543522464782bece1305b8Keun young Park target/common/obj/JAVA_LIBRARIES/framework_intermediates \ 606fe6c3c22e5e333456606fd28f1c5a2e34119d0fColin Cross target/common/obj/JAVA_LIBRARIES/android.test.runner_intermediates \ 616fe6c3c22e5e333456606fd28f1c5a2e34119d0fColin Cross target/common/obj/JAVA_LIBRARIES/telephony-common_intermediates \ 62554a0adfb790580735fdc2d32f4c6016072ef226Wink Saville target/common/obj/JAVA_LIBRARIES/voip-common_intermediates \ 63273c22cbc06f3939f85aeb6013b4594d2cf9fbdeWink Saville target/common/obj/JAVA_LIBRARIES/ims-common_intermediates \ 64735bba8be0511fc3b6b023eff0605d9bf4b30477Eino-Ville Talvala target/common/obj/JAVA_LIBRARIES/mms-common_intermediates \ 654b764993a99d36e434c9f9d33e6e233e10e8f2f6Colin Cross target/common/obj/JAVA_LIBRARIES/android-ex-camera2_intermediates \ 664b764993a99d36e434c9f9d33e6e233e10e8f2f6Colin Cross target/common/obj/JAVA_LIBRARIES/android-common_intermediates \ 674b764993a99d36e434c9f9d33e6e233e10e8f2f6Colin Cross 68816b9fd4e22843c836543522464782bece1305b8Keun young Park# not java libraries 69c451a373a4f07ea37aba6a50c6169d251668ba32Colin CrossPDK_PLATFORM_JAVA_ZIP_CONTENTS += \ 70816b9fd4e22843c836543522464782bece1305b8Keun young Park target/common/obj/APPS/framework-res_intermediates/package-export.apk \ 71816b9fd4e22843c836543522464782bece1305b8Keun young Park target/common/obj/APPS/framework-res_intermediates/src/R.stamp 72c451a373a4f07ea37aba6a50c6169d251668ba32Colin Crossendif # platform-java or FUSION build 73c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross 74c451a373a4f07ea37aba6a50c6169d251668ba32Colin CrossPDK_PLATFORM_JAVA_ZIP_JAVA_LIB_DIR := \ 75c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross $(PDK_PLATFORM_JAVA_ZIP_JAVA_TARGET_LIB_DIR) \ 76c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross $(PDK_PLATFORM_JAVA_ZIP_JAVA_HOST_LIB_DIR) 77c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross 78816b9fd4e22843c836543522464782bece1305b8Keun young ParkPDK_PLATFORM_JAVA_ZIP_CONTENTS += $(foreach lib_dir,$(PDK_PLATFORM_JAVA_ZIP_JAVA_LIB_DIR),\ 79816b9fd4e22843c836543522464782bece1305b8Keun young Park $(lib_dir)/classes.jar $(lib_dir)/javalib.jar) 80816b9fd4e22843c836543522464782bece1305b8Keun young Park 81efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Park# check and override java support level 82f4d1438d859bbbc289b55ba28c62de73f8c83fd5Keun young Parkifneq ($(TARGET_BUILD_PDK)$(PDK_FUSION_PLATFORM_ZIP),) 83efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Parkifneq ($(wildcard external/proguard),) 84efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young ParkTARGET_BUILD_JAVA_SUPPORT_LEVEL := sdk 85efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Parkelse # no proguard 86efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young ParkTARGET_BUILD_JAVA_SUPPORT_LEVEL := 87efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Parkendif 88efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Park# platform supprot is set after checking platform.zip 89efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Parkendif # PDK 90816b9fd4e22843c836543522464782bece1305b8Keun young Park 9182b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangifdef PDK_FUSION_PLATFORM_ZIP 9282b836fda6894ebfccccfbddc2ce3ee2718d862eYing WangTARGET_BUILD_PDK := true 9382b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangifeq (,$(wildcard $(PDK_FUSION_PLATFORM_ZIP))) 9482b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang $(error Cannot find file $(PDK_FUSION_PLATFORM_ZIP).) 9582b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangendif 9682b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 9782b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang_pdk_fusion_intermediates := $(call intermediates-dir-for, PACKAGING, pdk_fusion) 9882b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang_pdk_fusion_stamp := $(_pdk_fusion_intermediates)/pdk_fusion.stamp 9982b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 100816b9fd4e22843c836543522464782bece1305b8Keun young Park_pdk_fusion_file_list := $(shell unzip -Z -1 $(PDK_FUSION_PLATFORM_ZIP) \ 101816b9fd4e22843c836543522464782bece1305b8Keun young Park '*[^/]' -x 'target/common/*' 2>/dev/null) 102816b9fd4e22843c836543522464782bece1305b8Keun young Park_pdk_fusion_java_file_list := \ 103816b9fd4e22843c836543522464782bece1305b8Keun young Park $(shell unzip -Z -1 $(PDK_FUSION_PLATFORM_ZIP) 'target/common/*' 2>/dev/null) 104816b9fd4e22843c836543522464782bece1305b8Keun young Park_pdk_fusion_files := $(addprefix $(_pdk_fusion_intermediates)/,\ 105816b9fd4e22843c836543522464782bece1305b8Keun young Park $(_pdk_fusion_file_list) $(_pdk_fusion_java_file_list)) 106efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Park 107816b9fd4e22843c836543522464782bece1305b8Keun young Parkifneq ($(_pdk_fusion_java_file_list),) 108efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Park# This represents whether java build can use platform API or not 109efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Park# This should not be used in Android.mk 110efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young ParkTARGET_BUILD_PDK_JAVA_PLATFORM := true 111efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Parkifneq ($(TARGET_BUILD_JAVA_SUPPORT_LEVEL),) 112efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young ParkTARGET_BUILD_JAVA_SUPPORT_LEVEL := platform 113efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Parkendif 114816b9fd4e22843c836543522464782bece1305b8Keun young Parkendif 115816b9fd4e22843c836543522464782bece1305b8Keun young Park 11682b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang$(_pdk_fusion_stamp) : $(PDK_FUSION_PLATFORM_ZIP) 11782b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang @echo "Unzip $(dir $@) <- $<" 11882b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang $(hide) rm -rf $(dir $@) && mkdir -p $(dir $@) 11982b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang $(hide) unzip -qo $< -d $(dir $@) 120d8de82fbca4371ccefb41e02ac737e3a153901b3Keun young Park $(call split-long-arguments,-touch,$(_pdk_fusion_files)) 121816b9fd4e22843c836543522464782bece1305b8Keun young Park $(hide) touch $@ 122816b9fd4e22843c836543522464782bece1305b8Keun young Park 12382b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 12482b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang$(_pdk_fusion_files) : $(_pdk_fusion_stamp) 12582b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 126816b9fd4e22843c836543522464782bece1305b8Keun young Park 12782b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# Implicit pattern rules to copy the fusion files to the system image directory. 12882b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# Note that if there is already explicit rule in the build system to generate a file, 12982b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# the pattern rule will be just ignored by make. 13082b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# That's desired by us: we want only absent files from the platform zip package. 13182b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang# Copy with the last-modified time preserved, never follow symbolic links. 1322bea2e65658c686afc11eb753f647c5257685966Colin Cross$(PRODUCT_OUT)/% : $(_pdk_fusion_intermediates)/% $(_pdk_fusion_stamp) 13382b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang @mkdir -p $(dir $@) 13479d51095bb0fa75c5636e1988edd01fcf613694aSungmin Choi $(hide) rm -rf $@ 13582b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang $(hide) cp -fpPR $< $@ 13682b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 137c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross# implicit rules for host java files 138c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross$(HOST_COMMON_OUT_ROOT)/% : $(_pdk_fusion_intermediates)/host/common/% $(_pdk_fusion_stamp) 139c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross @mkdir -p $(dir $@) 140c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross $(hide) cp -fpPR $< $@ 141c451a373a4f07ea37aba6a50c6169d251668ba32Colin Cross 142efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Parkifeq (true,$(TARGET_BUILD_PDK_JAVA_PLATFORM)) 143816b9fd4e22843c836543522464782bece1305b8Keun young Park 144a219bdc0ba22c5e4a37f4367f16e7874510d0e78keunyoungPDK_FUSION_OUT_DIR := $(OUT_DIR) 14560767620c35b569559a14e50ebc27896d8202779Tom Cherryifeq (debug,$(TARGET_BUILD_TYPE)) 14660767620c35b569559a14e50ebc27896d8202779Tom CherryPDK_FUSION_OUT_DIR := $(DEBUG_OUT_DIR) 14760767620c35b569559a14e50ebc27896d8202779Tom Cherryendif 148a219bdc0ba22c5e4a37f4367f16e7874510d0e78keunyoung 149a219bdc0ba22c5e4a37f4367f16e7874510d0e78keunyoungdefine JAVA_dependency_template 15060767620c35b569559a14e50ebc27896d8202779Tom Cherry$(PDK_FUSION_OUT_DIR)/$(strip $(1)): $(_pdk_fusion_intermediates)/$(strip $(1)) \ 151a219bdc0ba22c5e4a37f4367f16e7874510d0e78keunyoung $(PDK_FUSION_OUT_DIR)/$(strip $(2)) $(_pdk_fusion_stamp) 152816b9fd4e22843c836543522464782bece1305b8Keun young Park @mkdir -p $$(dir $$@) 153816b9fd4e22843c836543522464782bece1305b8Keun young Park $(hide) cp -fpPR $$< $$@ 154816b9fd4e22843c836543522464782bece1305b8Keun young Parkendef 15582b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wang 156816b9fd4e22843c836543522464782bece1305b8Keun young Park# needs explicit dependency as package-export.apk is not explicitly pulled 157816b9fd4e22843c836543522464782bece1305b8Keun young Park$(eval $(call JAVA_dependency_template,\ 158816b9fd4e22843c836543522464782bece1305b8Keun young Parktarget/common/obj/APPS/framework-res_intermediates/src/R.stamp,\ 159816b9fd4e22843c836543522464782bece1305b8Keun young Parktarget/common/obj/APPS/framework-res_intermediates/package-export.apk)) 160816b9fd4e22843c836543522464782bece1305b8Keun young Park 161816b9fd4e22843c836543522464782bece1305b8Keun young Park# javalib.jar should pull classes.jar as classes.jar is not explicitly pulled. 162074d8385908f3d37f57cdc08b8248bbdf0f97c80Colin Cross$(foreach lib_dir,$(PDK_PLATFORM_JAVA_ZIP_JAVA_TARGET_LIB_DIR),\ 163816b9fd4e22843c836543522464782bece1305b8Keun young Park$(eval $(call JAVA_dependency_template,$(lib_dir)/javalib.jar,\ 164816b9fd4e22843c836543522464782bece1305b8Keun young Park$(lib_dir)/classes.jar))) 165816b9fd4e22843c836543522464782bece1305b8Keun young Park 166074d8385908f3d37f57cdc08b8248bbdf0f97c80Colin Cross# implicit rules for all other target files 167816b9fd4e22843c836543522464782bece1305b8Keun young Park$(TARGET_COMMON_OUT_ROOT)/% : $(_pdk_fusion_intermediates)/target/common/% $(_pdk_fusion_stamp) 168816b9fd4e22843c836543522464782bece1305b8Keun young Park @mkdir -p $(dir $@) 169816b9fd4e22843c836543522464782bece1305b8Keun young Park $(hide) cp -fpPR $< $@ 17082b836fda6894ebfccccfbddc2ce3ee2718d862eYing Wangendif 171ebb351e1b38422345e060ba3a986f470e461c95cKeun young Park 172816b9fd4e22843c836543522464782bece1305b8Keun young ParkALL_PDK_FUSION_FILES := $(addprefix $(PRODUCT_OUT)/, $(_pdk_fusion_file_list)) 173816b9fd4e22843c836543522464782bece1305b8Keun young Park 174816b9fd4e22843c836543522464782bece1305b8Keun young Parkendif # PDK_FUSION_PLATFORM_ZIP 175816b9fd4e22843c836543522464782bece1305b8Keun young Park 176ebb351e1b38422345e060ba3a986f470e461c95cKeun young Parkifeq ($(TARGET_BUILD_PDK),true) 177f4d1438d859bbbc289b55ba28c62de73f8c83fd5Keun young Park$(info PDK TARGET_BUILD_JAVA_SUPPORT_LEVEL $(TARGET_BUILD_JAVA_SUPPORT_LEVEL)) 178efe02ce9e00b9aebde7e9b32e81780d8de8f0dbdKeun young Parkifeq ($(TARGET_BUILD_PDK_JAVA_PLATFORM),) 179816b9fd4e22843c836543522464782bece1305b8Keun young Park 180ebb351e1b38422345e060ba3a986f470e461c95cKeun young Park# SDK used for Java build under PDK 181ebb351e1b38422345e060ba3a986f470e461c95cKeun young ParkPDK_BUILD_SDK_VERSION := $(lastword $(TARGET_AVAILABLE_SDK_VERSIONS)) 182ebb351e1b38422345e060ba3a986f470e461c95cKeun young Park$(info PDK Build uses SDK $(PDK_BUILD_SDK_VERSION)) 183ebb351e1b38422345e060ba3a986f470e461c95cKeun young Park 184816b9fd4e22843c836543522464782bece1305b8Keun young Parkelse # PDK_JAVA 185816b9fd4e22843c836543522464782bece1305b8Keun young Park 186816b9fd4e22843c836543522464782bece1305b8Keun young Park$(info PDK Build uses the current platform API) 187816b9fd4e22843c836543522464782bece1305b8Keun young Park 188816b9fd4e22843c836543522464782bece1305b8Keun young Parkendif # PDK_JAVA 189816b9fd4e22843c836543522464782bece1305b8Keun young Park 190ebb351e1b38422345e060ba3a986f470e461c95cKeun young Parkendif # BUILD_PDK 191722266918f5b1152bab0a9c05790420d09229b29Keun young Park 192722266918f5b1152bab0a9c05790420d09229b29Keun young Parkifneq (,$(filter platform platform-java, $(MAKECMDGOALS))$(filter true,$(TARGET_BUILD_PDK))) 193722266918f5b1152bab0a9c05790420d09229b29Keun young Park# files under $(PRODUCT_OUT)/symbols to help debugging. 194722266918f5b1152bab0a9c05790420d09229b29Keun young Park# Source not included to PDK due to dependency issue, so provide symbols instead. 195788c7789b9d5406b24efff7d6bdb113dafe05759Ying Wang 19600b83411a21e1efe35b646518223627a4b0a7960Ying Wang# We may not be building all of them. 19700b83411a21e1efe35b646518223627a4b0a7960Ying Wang# The platform.zip just silently ignores the nonexistent ones. 198722266918f5b1152bab0a9c05790420d09229b29Keun young ParkPDK_SYMBOL_FILES_LIST := \ 19900b83411a21e1efe35b646518223627a4b0a7960Ying Wang system/bin/app_process32 \ 20000b83411a21e1efe35b646518223627a4b0a7960Ying Wang system/bin/app_process64 201722266918f5b1152bab0a9c05790420d09229b29Keun young Park 202722266918f5b1152bab0a9c05790420d09229b29Keun young Parkifdef PDK_FUSION_PLATFORM_ZIP 203722266918f5b1152bab0a9c05790420d09229b29Keun young Park# symbols should be explicitly pulled for fusion build 20400b83411a21e1efe35b646518223627a4b0a7960Ying Wang$(foreach f,$(filter $(PDK_SYMBOL_FILES_LIST), $(_pdk_fusion_file_list)),\ 205722266918f5b1152bab0a9c05790420d09229b29Keun young Park $(eval $(call add-dependency,$(PRODUCT_OUT)/$(f),$(PRODUCT_OUT)/symbols/$(f)))) 206722266918f5b1152bab0a9c05790420d09229b29Keun young Parkendif # PLATFORM_ZIP 207722266918f5b1152bab0a9c05790420d09229b29Keun young Parkendif # platform.zip build or PDK 208