| sunny | 1ebcb5a | 2014-12-12 16:09:45 +0800 | [diff] [blame] | 1 | ################################################################################ |
| Victor Chong | 0bd202f | 2021-01-14 18:11:43 +0000 | [diff] [blame] | 2 | # Android optee-client, libckteec and optee-supplicant makefile # |
| sunny | 1ebcb5a | 2014-12-12 16:09:45 +0800 | [diff] [blame] | 3 | ################################################################################ |
| 4 | LOCAL_PATH := $(call my-dir) |
| 5 | |
| Victor Chong | 649507c | 2021-05-08 18:24:38 +0100 | [diff] [blame] | 6 | # 3 (debug) is too noisy |
| 7 | CFG_TEE_CLIENT_LOG_LEVEL ?= 2 |
| 8 | CFG_TEE_SUPP_LOG_LEVEL ?= 2 |
| 9 | |
| Victor Chong | 5ade810 | 2021-05-01 17:49:19 +0100 | [diff] [blame] | 10 | # Define Android-specific configuration before including config.mk |
| Yongqin Liu | bd0e7c8 | 2018-06-21 22:21:09 +0800 | [diff] [blame] | 11 | CFG_TEE_CLIENT_LOAD_PATH ?= /vendor/lib |
| Yongqin Liu | bd0e7c8 | 2018-06-21 22:21:09 +0800 | [diff] [blame] | 12 | TEEC_TEST_LOAD_PATH ?= /data/vendor/tee |
| Victor Chong | 83c7bcf | 2019-05-10 17:40:15 +0900 | [diff] [blame] | 13 | CFG_TEE_FS_PARENT_PATH ?= /data/vendor/tee |
| Etienne Carriere | f591143 | 2021-08-04 13:17:52 +0200 | [diff] [blame] | 14 | CFG_TEE_SUPP_PLUGINS ?= y |
| Victor Chong | 5ade810 | 2021-05-01 17:49:19 +0100 | [diff] [blame] | 15 | ifneq ($(strip $($(combo_2nd_arch_prefix)TARGET_TOOLS_PREFIX)),) |
| 16 | CFG_TEE_PLUGIN_LOAD_PATH ?= /vendor/lib64/tee-supplicant/plugins/ |
| 17 | else |
| 18 | CFG_TEE_PLUGIN_LOAD_PATH ?= /vendor/lib/tee-supplicant/plugins/ |
| 19 | endif |
| 20 | |
| 21 | $(info CFG_TEE_PLUGIN_LOAD_PATH = ${CFG_TEE_PLUGIN_LOAD_PATH}) |
| 22 | |
| Yongqin Liu | 9a63135 | 2018-03-29 16:00:11 +0800 | [diff] [blame] | 23 | |
| sunny | 1ebcb5a | 2014-12-12 16:09:45 +0800 | [diff] [blame] | 24 | ################################################################################ |
| 25 | # Include optee-client common config and flags # |
| 26 | ################################################################################ |
| 27 | include $(LOCAL_PATH)/config.mk |
| Zoltan Kuscsik | 3b9c1b2 | 2016-03-31 14:17:51 +0200 | [diff] [blame] | 28 | include $(LOCAL_PATH)/android_flags.mk |
| 29 | |
| 30 | optee_CFLAGS = $(CFLAGS) |
| sunny | 1ebcb5a | 2014-12-12 16:09:45 +0800 | [diff] [blame] | 31 | |
| 32 | ################################################################################ |
| 33 | # Build libteec.so - TEE (Trusted Execution Environment) shared library # |
| 34 | ################################################################################ |
| 35 | include $(CLEAR_VARS) |
| Zoltan Kuscsik | 3b9c1b2 | 2016-03-31 14:17:51 +0200 | [diff] [blame] | 36 | LOCAL_CFLAGS += $(optee_CFLAGS) |
| sunny | 1ebcb5a | 2014-12-12 16:09:45 +0800 | [diff] [blame] | 37 | |
| Ruslan Piasetskyi | 0b7aa7d | 2017-03-23 20:56:09 +0200 | [diff] [blame] | 38 | ifneq ($(CFG_TEE_CLIENT_LOG_FILE),) |
| Yongqin Liu | 9a63135 | 2018-03-29 16:00:11 +0800 | [diff] [blame] | 39 | LOCAL_CFLAGS += -DTEEC_LOG_FILE=\"$(CFG_TEE_CLIENT_LOG_FILE)\" |
| sunny | 1ebcb5a | 2014-12-12 16:09:45 +0800 | [diff] [blame] | 40 | endif |
| 41 | |
| 42 | LOCAL_CFLAGS += -DDEBUGLEVEL_$(CFG_TEE_CLIENT_LOG_LEVEL) |
| 43 | LOCAL_CFLAGS += -DBINARY_PREFIX=\"TEEC\" |
| 44 | |
| Victor Chong | 6d96806 | 2021-01-14 18:08:08 +0000 | [diff] [blame] | 45 | LOCAL_SRC_FILES := libteec/src/tee_client_api.c \ |
| Jerome Forissier | 5883a75 | 2017-06-01 14:53:52 +0200 | [diff] [blame] | 46 | libteec/src/teec_trace.c |
| 47 | ifeq ($(CFG_TEE_BENCHMARK),y) |
| 48 | LOCAL_CFLAGS += -DCFG_TEE_BENCHMARK |
| 49 | LOCAL_SRC_FILES += teec_benchmark.c |
| 50 | endif |
| sunny | 1ebcb5a | 2014-12-12 16:09:45 +0800 | [diff] [blame] | 51 | |
| 52 | LOCAL_C_INCLUDES := $(LOCAL_PATH)/public \ |
| Zoltan Kuscsik | b4ce444 | 2016-03-31 13:52:37 +0200 | [diff] [blame] | 53 | $(LOCAL_PATH)/libteec/include \ |
| sunny | 1ebcb5a | 2014-12-12 16:09:45 +0800 | [diff] [blame] | 54 | |
| 55 | LOCAL_PRELINK_MODULE := false |
| 56 | LOCAL_MODULE := libteec |
| Yongqin Liu | bd0e7c8 | 2018-06-21 22:21:09 +0800 | [diff] [blame] | 57 | |
| sunny | 1ebcb5a | 2014-12-12 16:09:45 +0800 | [diff] [blame] | 58 | LOCAL_MODULE_TAGS := optional |
| Yongqin Liu | bd0e7c8 | 2018-06-21 22:21:09 +0800 | [diff] [blame] | 59 | LOCAL_VENDOR_MODULE := true |
| Zoltan Kuscsik | 12dcfbe | 2016-03-31 13:54:39 +0200 | [diff] [blame] | 60 | |
| Victor Chong | f57695a | 2021-01-14 18:06:03 +0000 | [diff] [blame] | 61 | # Build the 32-bit and 64-bit versions. |
| 62 | LOCAL_MULTILIB := both |
| 63 | LOCAL_MODULE_TARGET_ARCH := arm arm64 |
| 64 | |
| Zoltan Kuscsik | 12dcfbe | 2016-03-31 13:54:39 +0200 | [diff] [blame] | 65 | LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/public |
| 66 | |
| sunny | 1ebcb5a | 2014-12-12 16:09:45 +0800 | [diff] [blame] | 67 | include $(BUILD_SHARED_LIBRARY) |
| 68 | |
| Victor Chong | 6d96806 | 2021-01-14 18:08:08 +0000 | [diff] [blame] | 69 | ################################################################################ |
| Victor Chong | 0bd202f | 2021-01-14 18:11:43 +0000 | [diff] [blame] | 70 | # Build libckteec.so # |
| 71 | ################################################################################ |
| 72 | include $(CLEAR_VARS) |
| 73 | |
| 74 | LOCAL_CFLAGS += $(optee_CFLAGS) |
| 75 | |
| 76 | LOCAL_SRC_FILES := libckteec/src/pkcs11_api.c \ |
| 77 | libckteec/src/ck_debug.c \ |
| 78 | libckteec/src/ck_helpers.c \ |
| 79 | libckteec/src/invoke_ta.c \ |
| 80 | libckteec/src/pkcs11_processing.c \ |
| 81 | libckteec/src/pkcs11_token.c \ |
| 82 | libckteec/src/serializer.c \ |
| 83 | libckteec/src/serialize_ck.c |
| 84 | |
| 85 | LOCAL_C_INCLUDES := $(LOCAL_PATH)/public \ |
| 86 | $(LOCAL_PATH)/libckteec/include |
| 87 | |
| 88 | LOCAL_SHARED_LIBRARIES := libteec |
| 89 | |
| 90 | LOCAL_PRELINK_MODULE := false |
| 91 | LOCAL_MODULE := libckteec |
| 92 | |
| 93 | LOCAL_MODULE_TAGS := optional |
| 94 | LOCAL_VENDOR_MODULE := true |
| 95 | |
| 96 | # Build the 32-bit and 64-bit versions. |
| 97 | LOCAL_MULTILIB := both |
| 98 | LOCAL_MODULE_TARGET_ARCH := arm arm64 |
| 99 | |
| 100 | LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/libckteec/include |
| 101 | |
| 102 | include $(BUILD_SHARED_LIBRARY) |
| 103 | |
| 104 | ################################################################################ |
| Victor Chong | 6d96806 | 2021-01-14 18:08:08 +0000 | [diff] [blame] | 105 | # Build TEE Supplicant # |
| 106 | ################################################################################ |
| Zoltan Kuscsik | 3b9c1b2 | 2016-03-31 14:17:51 +0200 | [diff] [blame] | 107 | include $(LOCAL_PATH)/tee-supplicant/tee_supplicant_android.mk |