xref: /optee_os/ta/mk/build-user-ta.mk (revision cfa34d9afb5c8b5931937744c6c838f9d0010823)
1*cfa34d9aSJens Wiklanderinclude mk/cleanvars.mk
2*cfa34d9aSJens Wiklandersm := $(lastword $(subst /, ,$(dir $(ta-mk-file))))
3*cfa34d9aSJens Wiklandersm-$(sm) := y
4*cfa34d9aSJens Wiklander
5*cfa34d9aSJens Wiklander# Select TA target (aka TA dev kit, when delivered)
6*cfa34d9aSJens Wiklanderta-target := $(strip $(if $(CFG_USER_TA_TARGET_$(sm)), \
7*cfa34d9aSJens Wiklander		$(filter $(CFG_USER_TA_TARGET_$(sm)), $(ta-targets)), \
8*cfa34d9aSJens Wiklander		$(default-user-ta-target)))
9*cfa34d9aSJens Wiklander
10*cfa34d9aSJens Wiklanderta-dev-kit-dir$(sm) := $(out-dir)/export-$(ta-target)
11*cfa34d9aSJens Wiklanderlink-out-dir$(sm) := $(out-dir)/$(patsubst %/,%, $(dir $(ta-mk-file)))
12*cfa34d9aSJens Wiklander
13*cfa34d9aSJens Wiklanderinclude $(ta-mk-file)
14*cfa34d9aSJens Wiklanderifeq ($(user-ta-uuid),)
15*cfa34d9aSJens Wiklander$(error user-ta-uuid missing in $(ta-mk-file))
16*cfa34d9aSJens Wiklanderendif
17*cfa34d9aSJens Wiklander
18*cfa34d9aSJens Wiklander# Inherit compiler and flags from TA target
19*cfa34d9aSJens WiklanderCROSS_COMPILE_$(sm)	:= $(CROSS_COMPILE_$(ta-target))
20*cfa34d9aSJens WiklanderCOMPILER_$(sm)		:= $(COMPILER_$(ta-target))
21*cfa34d9aSJens Wiklanderinclude mk/$(COMPILER_$(sm)).mk
22*cfa34d9aSJens Wiklander
23*cfa34d9aSJens Wiklandercppflags$(sm)	:= $(cppflags$(ta-target)) -I$(ta-dev-kit-dir$(sm))/include
24*cfa34d9aSJens Wiklandercflags$(sm)	:= $(cflags$(ta-target))
25*cfa34d9aSJens Wiklanderaflags$(sm)	:= $(aflags$(ta-target))
26*cfa34d9aSJens Wiklander
27*cfa34d9aSJens Wiklanderlibdirs  = $(ta-dev-kit-dir$(sm))/lib
28*cfa34d9aSJens Wiklanderlibnames = utils utee mpa
29*cfa34d9aSJens Wiklanderifeq ($(CFG_TA_MBEDTLS),y)
30*cfa34d9aSJens Wiklanderlibnames += mbedtls
31*cfa34d9aSJens Wiklanderendif
32*cfa34d9aSJens Wiklanderlibdeps = $(addsuffix .a, $(addprefix $(libdirs)/lib, $(libnames)))
33*cfa34d9aSJens Wiklander
34*cfa34d9aSJens Wiklandersubdirs = $(dir $(ta-mk-file))
35*cfa34d9aSJens Wiklanderinclude mk/subdir.mk
36*cfa34d9aSJens Wiklander
37*cfa34d9aSJens Wiklanderspec-out-dir := $(link-out-dir$(sm))
38*cfa34d9aSJens Wiklanderspec-srcs += $(ta-dev-kit-dir$(sm))/src/user_ta_header.c
39*cfa34d9aSJens Wiklander
40*cfa34d9aSJens Wiklanderinclude mk/compile.mk
41*cfa34d9aSJens Wiklanderinclude  ta/arch/$(ARCH)/link.mk
42