ifeq ($O,) out-dir := $(CURDIR)/out else include scripts/common.mk out-dir := $(call strip-trailing-slashes-and-dots,$(O)) ifeq ($(out-dir),) $(error invalid output directory (O=$(O))) endif endif -include $(TA_DEV_KIT_DIR)/host_include/conf.mk ifneq ($V,1) q := @ echo := @echo else q := echo := @: endif # export 'q', used by sub-makefiles. export q # If _HOST or _TA specific compilers are not specified, then use CROSS_COMPILE CROSS_COMPILE_HOST ?= $(CROSS_COMPILE) CROSS_COMPILE_TA ?= $(CROSS_COMPILE) .PHONY: all ifneq ($(wildcard $(TA_DEV_KIT_DIR)/host_include/conf.mk),) ifeq "$(BUILD_CA)" "y" all: rk_test xtest ta extra_app else all: ta endif else all: $(q)echo "TA_DEV_KIT_DIR is not correctly defined" && false endif .PHONY: extra_app extra_app: $(q)[ ! -d host/extra_app ] || \ $(MAKE) -C host/extra_app CROSS_COMPILE="$(CROSS_COMPILE_HOST)" \ --no-builtin-variables \ q=$(q) \ O=$(out-dir)/extra_app \ $@ .PHONY: rk_test rk_test: $(q)$(MAKE) -C host/rk_test CROSS_COMPILE="$(CROSS_COMPILE_HOST)" \ --no-builtin-variables \ q=$(q) \ O=$(out-dir)/rk_test \ $@ .PHONY: xtest xtest: $(q)$(MAKE) -C host/xtest CROSS_COMPILE="$(CROSS_COMPILE_HOST)" \ --no-builtin-variables \ q=$(q) \ O=$(out-dir) \ $@ .PHONY: ta ta: $(q)$(MAKE) -C ta CROSS_COMPILE="$(CROSS_COMPILE_TA)" \ O=$(out-dir) \ $@ .PHONY: clean ifneq ($(wildcard $(TA_DEV_KIT_DIR)/host_include/conf.mk),) clean: $(q)$(MAKE) -C host/rk_test O=$(out-dir) $@ $(q)$(MAKE) -C host/xtest O=$(out-dir) $@ $(q)$(MAKE) -C ta O=$(out-dir) $@ $(q)[ ! -d host/extra_app ] || $(MAKE) -C host/extra_app O=$(out-dir) $@ $(q)find ta/ \( -name "*.ta" -o -name "*.dmp" -o -name "*.elf" -o -name "*.map" \) -exec rm -rf {} \; else clean: $(q)echo "TA_DEV_KIT_DIR is not correctly defined" $(q)echo "You can remove manually $(out-dir)" endif install: $(echo) ' INSTALL ${DESTDIR}/lib/optee_armtz' $(q)mkdir -p ${DESTDIR}/lib/optee_armtz $(q)find $(out-dir) -name \*.ta -exec cp -a {} ${DESTDIR}/lib/optee_armtz \; $(echo) ' INSTALL ${DESTDIR}/bin' $(q)mkdir -p ${DESTDIR}/bin $(q)cp -a $(out-dir)/xtest/xtest ${DESTDIR}/bin $(echo) ' INSTALL ${DESTDIR}/$(CFG_TEE_PLUGIN_LOAD_PATH)' $(q)mkdir -p ${DESTDIR}/$(CFG_TEE_PLUGIN_LOAD_PATH) $(q)cp $(out-dir)/supp_plugin/*.plugin ${DESTDIR}/$(CFG_TEE_PLUGIN_LOAD_PATH) .PHONY: cscope cscope: $(echo) ' CSCOPE .' ${q}rm -f cscope.* ${q}find $(PWD) -name "*.[ch]" -o -name "*.cpp" | grep -v /package/ > cscope.files ${q}cscope -b -q -k