xref: /optee_os/ta/mk/ta_dev_kit.mk (revision 1a48b44476001e1de1e836d6649fac19371d581f)
1b0104773SPascal Brand
2b0104773SPascal Brand
3b0104773SPascal Brand# Get the dir of the ta-dev-kit, requires make version 3.81 or later
44334e8d7SJerome Forissierta-dev-kit-dir := $(patsubst %/,%,$(abspath $(dir $(lastword $(MAKEFILE_LIST)))..))
5b0104773SPascal Brand
6b0104773SPascal Brand
7b0104773SPascal Brand.PHONY: all
8b0104773SPascal Brandall:
9b0104773SPascal Brand
1004ab7fe3SJoakim Bechsm := user_ta
11b0104773SPascal Brandsm-$(ta) := y
12b0104773SPascal Brandbinary := $(BINARY)
13b0104773SPascal Brand
1404ab7fe3SJoakim BechCROSS_COMPILE_$(sm)	?= $(CROSS_COMPILE)
1504ab7fe3SJoakim Bech
16b0104773SPascal Brandifneq ($O,)
174334e8d7SJerome Forissierout-dir := $O
18c3c7db16SJerome Forissierelse
19c3c7db16SJerome Forissierout-dir := .
20b0104773SPascal Brandendif
21b0104773SPascal Brand
22b0104773SPascal Brandifneq ($V,1)
23b0104773SPascal Brandq := @
24b0104773SPascal Brandcmd-echo := true
25b0104773SPascal Brandelse
26b0104773SPascal Brandq :=
27b0104773SPascal Brandcmd-echo := echo
28b0104773SPascal Brandendif
29b0104773SPascal Brand
30*1a48b444SJerome Forissierinclude $(ta-dev-kit-dir)/mk/arch.mk
313bce5ba1SJerome Forissier-include $(ta-dev-kit-dir)/mk/platform_flags.mk
323bce5ba1SJerome Forissier
33*1a48b444SJerome Forissiercppflags$(sm)  += $(platform-cppflags) $(user_ta-platform-cppflags)
343bce5ba1SJerome Forissieraflags$(sm)    += $(platform-aflags) $(user_ta-platform-aflags)
353bce5ba1SJerome Forissiercflags$(sm)    += $(platform-cflags) $(user_ta-platform-cflags)
363bce5ba1SJerome Forissier
37*1a48b444SJerome ForissierCFG_TEE_TA_LOG_LEVEL ?= 2
38*1a48b444SJerome Forissiercppflags$(sm) += -DTRACE_LEVEL=$(CFG_TEE_TA_LOG_LEVEL)
39*1a48b444SJerome Forissier
40*1a48b444SJerome ForissierCFG_TEE_CORE_USER_MEM_DEBUG ?= 0
41*1a48b444SJerome Forissiercppflags$(sm) += -DCFG_TEE_CORE_USER_MEM_DEBUG=$(CFG_TEE_CORE_USER_MEM_DEBUG)
42*1a48b444SJerome Forissier
43b0104773SPascal Brandcppflags$(sm) += -I. -I$(ta-dev-kit-dir)/include
44b0104773SPascal Brand
45153c4954SJens Wiklanderinclude $(ta-dev-kit-dir)/mk/arch.mk
46153c4954SJens Wiklander
47b0104773SPascal Brandlibdirs += $(ta-dev-kit-dir)/lib
48ed4e28baSPascal Brandlibnames += utee mpa utils utee
49b0104773SPascal Brandlibdeps += $(ta-dev-kit-dir)/lib/libutils.a
50b0104773SPascal Brandlibdeps += $(ta-dev-kit-dir)/lib/libmpa.a
51b0104773SPascal Brandlibdeps += $(ta-dev-kit-dir)/lib/libutee.a
52b0104773SPascal Brand
53b0104773SPascal Brand.PHONY: clean
54b0104773SPascal Brandclean:
550047cb63SJerome Forissier	@echo '  CLEAN   .'
56b0104773SPascal Brand	${q}rm -f $(cleanfiles)
57b0104773SPascal Brand
58b0104773SPascal Brand
59b0104773SPascal Brandsubdirs = .
60b0104773SPascal Brandinclude  $(ta-dev-kit-dir)/mk/subdir.mk
61b0104773SPascal Brandvpath %.c $(ta-dev-kit-dir)/src
62b0104773SPascal Brandsrcs += user_ta_header.c
63b0104773SPascal Brand
642cb1e0d0SJens Wiklanderinclude  $(ta-dev-kit-dir)/mk/gcc.mk
65b0104773SPascal Brandinclude  $(ta-dev-kit-dir)/mk/compile.mk
66b0104773SPascal Brandinclude  $(ta-dev-kit-dir)/mk/link.mk
67