blob: 086f500d9718d51aa6b3391e52d42248cd63848f [file] [log] [blame]
Jerome Forissierf02a2212015-10-29 14:33:35 +01001LOCAL_PATH := $(call my-dir)
2
Yongqin Liu26b8aa82016-06-02 20:54:19 +08003## include variants like TA_DEV_KIT_DIR
Yongqin Liub31d4a92017-11-08 18:47:16 +08004## and OPTEE_BIN
Yongqin Liu26b8aa82016-06-02 20:54:19 +08005INCLUDE_FOR_BUILD_TA := false
6include $(BUILD_OPTEE_MK)
7INCLUDE_FOR_BUILD_TA :=
8
Jerome Forissierf02a2212015-10-29 14:33:35 +01009VERSION = $(shell git describe --always --dirty=-dev 2>/dev/null || echo Unknown)
Jerome Forissierf02a2212015-10-29 14:33:35 +010010
Zoltan Kuscsik88b88c52016-10-20 09:15:56 +020011# TA_DEV_KIT_DIR must be set to non-empty value to
12# avoid the Android build scripts complaining about
13# includes pointing outside the Android source tree.
14# This var is expected to be set when OPTEE OS built.
15# We set the default value to an invalid path.
16TA_DEV_KIT_DIR ?= ../invalid_include_path
17
Jerome Forissierf02a2212015-10-29 14:33:35 +010018-include $(TA_DEV_KIT_DIR)/host_include/conf.mk
19
20include $(CLEAR_VARS)
21LOCAL_MODULE := xtest
Yongqin Liu286f1fc2018-06-21 22:09:15 +080022LOCAL_VENDOR_MODULE := true
Zoltan Kuscsikd3c5c2c2016-04-08 11:33:39 +020023LOCAL_SHARED_LIBRARIES := libteec
Jerome Forissierf02a2212015-10-29 14:33:35 +010024
Yongqin Liu286f1fc2018-06-21 22:09:15 +080025TA_DIR ?= /vendor/lib/optee_armtz
26
Victor Chong170a1ee2017-04-13 02:13:50 +010027srcs := regression_1000.c
Jens Wiklander02389a92016-12-16 11:13:38 +010028
29ifeq ($(CFG_GP_SOCKETS),y)
Victor Chong170a1ee2017-04-13 02:13:50 +010030srcs += regression_2000.c \
Jens Wiklander02389a92016-12-16 11:13:38 +010031 sock_server.c \
32 rand_stream.c
33endif
34
Victor Chong170a1ee2017-04-13 02:13:50 +010035srcs += adbg/src/adbg_case.c \
Jerome Forissierf02a2212015-10-29 14:33:35 +010036 adbg/src/adbg_enum.c \
37 adbg/src/adbg_expect.c \
38 adbg/src/adbg_log.c \
Jerome Forissierf02a2212015-10-29 14:33:35 +010039 adbg/src/adbg_run.c \
Jerome Forissierf02a2212015-10-29 14:33:35 +010040 adbg/src/security_utils_hex.c \
Igor Opaniuka00eeb12016-09-28 15:57:58 -070041 aes_perf.c \
Victor Chong170a1ee2017-04-13 02:13:50 +010042 benchmark_1000.c \
43 benchmark_2000.c \
44 regression_4000.c \
45 regression_5000.c \
46 regression_6000.c \
47 regression_7000.c \
48 regression_8000.c \
Jens Wiklander29326472018-04-20 11:22:15 +020049 regression_8100.c \
Victor Chong170a1ee2017-04-13 02:13:50 +010050 sha_perf.c \
51 xtest_helpers.c \
52 xtest_main.c \
53 xtest_test.c
Jerome Forissierf02a2212015-10-29 14:33:35 +010054
Jens Wiklanderf261a6d2017-11-09 16:45:51 +010055ifeq ($(CFG_SECSTOR_TA_MGMT_PTA),y)
56srcs += install_ta.c
57endif
58
Etienne Carriere41343db2017-03-17 15:38:52 +010059ifeq ($(CFG_SECURE_DATA_PATH),y)
60srcs += sdp_basic.c
61endif
62
Jens Wiklander97d6e292018-04-23 13:00:31 +020063define my-embed-file
64$(TARGET_OUT_HEADERS)/$(1).h: $(LOCAL_PATH)/$(2)
65 @echo ' GEN $$@'
Jens Wiklander950ea1c2018-04-30 15:39:22 +020066 @$(LOCAL_PATH)/scripts/file_to_c.py --inf $$< --out $$@ --name $(1)
Jens Wiklander97d6e292018-04-23 13:00:31 +020067
68$(LOCAL_PATH)/host/xtest/regression_8100.c: $(TARGET_OUT_HEADERS)/$(1).h
69endef
70
71$(eval $(call my-embed-file,regression_8100_ca_crt,cert/ca.crt))
72$(eval $(call my-embed-file,regression_8100_mid_crt,cert/mid.crt))
73$(eval $(call my-embed-file,regression_8100_my_crt,cert/my.crt))
Jens Wiklander950ea1c2018-04-30 15:39:22 +020074$(eval $(call my-embed-file,regression_8100_my_csr,cert/my.csr))
Jens Wiklander97d6e292018-04-23 13:00:31 +020075
Jerome Forissierf02a2212015-10-29 14:33:35 +010076LOCAL_SRC_FILES := $(patsubst %,host/xtest/%,$(srcs))
77
Zoltan Kuscsikc8186b32016-04-08 11:35:17 +020078LOCAL_C_INCLUDES += $(LOCAL_PATH)/host/xtest \
79 $(LOCAL_PATH)/host/xtest/adbg/include\
Zoltan Kuscsik56cee0b2016-04-13 09:39:42 +020080 $(LOCAL_PATH)/host/xtest/xml/include \
Zoltan Kuscsikc8186b32016-04-08 11:35:17 +020081 $(TA_DEV_KIT_DIR)/host_include \
82 $(LOCAL_PATH)/ta/concurrent/include \
Jens Wiklander70672972016-04-06 00:01:45 +020083 $(LOCAL_PATH)/ta/concurrent_large/include \
Zoltan Kuscsikc8186b32016-04-08 11:35:17 +020084 $(LOCAL_PATH)/ta/create_fail_test/include \
85 $(LOCAL_PATH)/ta/crypt/include \
86 $(LOCAL_PATH)/ta/enc_fs/include \
87 $(LOCAL_PATH)/ta/os_test/include \
88 $(LOCAL_PATH)/ta/rpc_test/include \
89 $(LOCAL_PATH)/ta/sims/include \
Jens Wiklanderff1be9e2018-02-01 14:16:57 +010090 $(LOCAL_PATH)/ta/include \
Zoltan Kuscsikc8186b32016-04-08 11:35:17 +020091 $(LOCAL_PATH)/ta/storage_benchmark/include \
Igor Opaniuka00eeb12016-09-28 15:57:58 -070092 $(LOCAL_PATH)/ta/sha_perf/include \
Victor Chong23139a32017-03-01 05:00:54 +000093 $(LOCAL_PATH)/ta/aes_perf/include \
Etienne Carriere41343db2017-03-17 15:38:52 +010094 $(LOCAL_PATH)/ta/socket/include \
95 $(LOCAL_PATH)/ta/sdp_basic/include
Jerome Forissierf02a2212015-10-29 14:33:35 +010096
Jerome Forissierf9b89252016-08-23 18:30:43 +020097# Include configuration file generated by OP-TEE OS (CFG_* macros)
98LOCAL_CFLAGS += -include conf.h
Jerome Forissierf02a2212015-10-29 14:33:35 +010099LOCAL_CFLAGS += -pthread
Jerome Forissiera8b78f12016-08-17 09:40:59 +0200100LOCAL_CFLAGS += -g3
Victor Chongea837822018-02-02 14:55:21 +0000101LOCAL_CFLAGS += -Wno-missing-field-initializers -Wno-format-zero-length
Jerome Forissierf02a2212015-10-29 14:33:35 +0100102
Yongqin Liu286f1fc2018-06-21 22:09:15 +0800103ifneq ($(TA_DIR),)
104LOCAL_CFLAGS += -DTA_DIR=\"$(TA_DIR)\"
105endif
106
Yongqin Liub31d4a92017-11-08 18:47:16 +0800107## $(OPTEE_BIN) is the path of tee.bin like
108## out/target/product/hikey/optee/arm-plat-hikey/core/tee.bin
109## it will be generated after build the optee_os with target BUILD_OPTEE_OS
110## which is defined in the common ta build mk file included before,
111LOCAL_ADDITIONAL_DEPENDENCIES := $(OPTEE_BIN)
Yongqin Liu26b8aa82016-06-02 20:54:19 +0800112
Jerome Forissierf02a2212015-10-29 14:33:35 +0100113include $(BUILD_EXECUTABLE)
Zoltan Kuscsik21758dc2016-04-13 09:41:02 +0200114
115include $(LOCAL_PATH)/ta/Android.mk