• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (C) 2022 Huawei Technologies Co., Ltd.
2# Licensed under the Mulan PSL v2.
3# You can use this software according to the terms and conditions of the Mulan PSL v2.
4# You may obtain a copy of Mulan PSL v2 at:
5#     http://license.coscl.org.cn/MulanPSL2
6# THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR
7# IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR
8# PURPOSE.
9# See the Mulan PSL v2 for more details.
10
11# Targets
12MODULE := libcrypto${TARG}.a
13
14CPPFLAGS += -I$(TEELIB)/libcrypto/include
15CPPFLAGS += -I$(TEELIB)/libcrypto_hal/include
16CPPFLAGS += -I$(TEELIB)/libcrypto_hal/src
17CPPFLAGS += -I$(TEELIB)/libswcrypto_engine/include
18CPPFLAGS += -I$(TEELIB)/libteeos/include/tee
19CPPFLAGS += -I$(TEELIB)/libteeos/include
20CPPFLAGS += -I$(TEELIB)/libteeos/src/tee
21CPPFLAGS += -I$(TEELIB)/libteeos/include/legacy
22CPPFLAGS += -I$(TEELIB)/libteemem/include
23CPPFLAGS += -I$(TEELIB)/libssa/include
24CPPFLAGS += -I$(SYSLIB)/libelf_verify/include
25
26CFILES   := $(wildcard src/*.c)
27
28ifeq ($(GP_SUPPORT), y)
29CFILES := $(filter-out src/tee_crypto_api_hash.c, $(CFILES))
30CFILES := $(filter-out src/tee_crypto_api_hmac.c, $(CFILES))
31else
32CFILES := $(filter-out src/tee_crypto_gp_hash.c, $(CFILES))
33CFILES := $(filter-out src/tee_crypto_gp_hmac.c, $(CFILES))
34endif
35
36#32M when ascend, others 500K
37CFLAGS += -DMAX_SRC_SIZE=512000
38A32_CFLAGS += -DMAX_SRC_SIZE=512000
39
40ifneq ($(findstring $(CONFIG_CRYPTO_SOFT_ENGINE), openssl openssl3),)
41CPPFLAGS += -I$(TEELIB)/libopenssl/openssl/include
42CPPFLAGS += -I$(TEELIB)/libopenssl/openssl/crypto
43endif
44
45ifeq ($(CONFIG_CRYPTO_SOFT_ENGINE), openssl)
46CFLAGS += -DOPENSSL_ENABLE
47A32_CFLAGS += -DOPENSSL_ENABLE
48else ifeq ($(CONFIG_CRYPTO_SOFT_ENGINE), openssl3)
49CFLAGS += -DOPENSSL3_ENABLE
50A32_CFLAGS += -DOPENSSL3_ENABLE
51endif
52
53ifeq (${TARG}, _a32)
54ASMFILES += $(wildcard src/arm/*.S)
55endif
56
57ifeq (${TARG}, )
58ASMFILES += $(wildcard src/aarch64/*.S)
59endif
60
61include $(BUILD_LIB)/lib-common.mk
62