xref: /optee_os/ta/mk/ta_dev_kit.mk (revision 4508233595eb5226a7f2fd0e94c4d5b4ef37fa9b)
1
2
3# Get the dir of the ta-dev-kit, requires make version 3.81 or later
4ta-dev-kit-dir := $(patsubst %/,%,$(abspath $(dir $(lastword $(MAKEFILE_LIST)))..))
5
6
7.PHONY: all
8all:
9
10sm := user_ta
11sm-$(ta) := y
12binary := $(BINARY)
13
14CROSS_COMPILE_$(sm)	?= $(CROSS_COMPILE)
15
16ifneq ($O,)
17out-dir := $O
18else
19out-dir := .
20endif
21
22ifneq ($V,1)
23q := @
24cmd-echo := true
25cmd-echo-silent := echo
26else
27q :=
28cmd-echo := echo
29cmd-echo-silent := true
30endif
31
32ifneq ($(filter 4.%,$(MAKE_VERSION)),)  # make-4
33ifneq ($(filter %s ,$(firstword x$(MAKEFLAGS))),)
34cmd-echo-silent := true
35endif
36else                                    # make-3.8x
37ifneq ($(findstring s, $(MAKEFLAGS)),)
38cmd-echo-silent := true
39endif
40endif
41
42
43include $(ta-dev-kit-dir)/mk/arch.mk
44-include $(ta-dev-kit-dir)/mk/platform_flags.mk
45
46cppflags$(sm)  += $(platform-cppflags) $(user_ta-platform-cppflags)
47aflags$(sm)    += $(platform-aflags) $(user_ta-platform-aflags)
48cflags$(sm)    += $(platform-cflags) $(user_ta-platform-cflags)
49
50CFG_TEE_TA_LOG_LEVEL ?= 2
51cppflags$(sm) += -DTRACE_LEVEL=$(CFG_TEE_TA_LOG_LEVEL)
52
53CFG_TEE_CORE_USER_MEM_DEBUG ?= 0
54cppflags$(sm) += -DCFG_TEE_CORE_USER_MEM_DEBUG=$(CFG_TEE_CORE_USER_MEM_DEBUG)
55
56ifeq ($(CFG_TEE_PANIC_DEBUG),y)
57cppflags$(sm) += -DCFG_TEE_PANIC_DEBUG=1
58endif
59
60cppflags$(sm) += -I. -I$(ta-dev-kit-dir)/include
61
62include $(ta-dev-kit-dir)/mk/arch.mk
63
64libdirs += $(ta-dev-kit-dir)/lib
65libnames += utils utee mpa utils utee
66libdeps += $(ta-dev-kit-dir)/lib/libutils.a
67libdeps += $(ta-dev-kit-dir)/lib/libmpa.a
68libdeps += $(ta-dev-kit-dir)/lib/libutee.a
69
70.PHONY: clean
71clean:
72	@$(cmd-echo-silent) '  CLEAN   .'
73	${q}rm -f $(cleanfiles)
74
75
76subdirs = .
77include  $(ta-dev-kit-dir)/mk/subdir.mk
78vpath %.c $(ta-dev-kit-dir)/src
79srcs += user_ta_header.c
80
81include  $(ta-dev-kit-dir)/mk/gcc.mk
82include  $(ta-dev-kit-dir)/mk/compile.mk
83include  $(ta-dev-kit-dir)/mk/link.mk
84