xref: /optee_os/core/lib/libtomcrypt/sub.mk (revision 2b49b295ed4790b2ddcdeb8dc95e94b680244d73)
1b0104773SPascal Brandglobal-incdirs-y += include
25a913ee7SJerome Forissierglobal-incdirs-y += src/headers
35a913ee7SJerome Forissier
45a913ee7SJerome Forissiercppflags-lib-y += -DARGTYPE=4  # Make LTC_ARGCHK() return on error
55a913ee7SJerome Forissiercppflags-lib-y += -DLTC_CLEAN_STACK -DLTC_NO_TEST -DLTC_NO_PROTOTYPES
65a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_TABLES -DLTC_HASH_HELPERS
75a913ee7SJerome Forissiercppflags-lib-$(_CFG_CORE_LTC_SIZE_OPTIMIZATION) += -DLTC_SMALL_CODE
85a913ee7SJerome Forissier
95a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_CIPHERS
105a913ee7SJerome Forissier
114576dbb3SJens Wiklanderifeq ($(_CFG_CORE_LTC_AES_DESC),y)
125a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_RIJNDAEL
135a913ee7SJerome Forissierendif
145a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_DES),y)
155a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_DES
165a913ee7SJerome Forissierendif
175a913ee7SJerome Forissier
185a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_MODES
195a913ee7SJerome Forissier
205a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_ECB),y)
215a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_ECB_MODE
225a913ee7SJerome Forissierendif
235a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_CBC),y)
245a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_CBC_MODE
255a913ee7SJerome Forissierendif
265a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_CTR),y)
275a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_CTR_MODE
285a913ee7SJerome Forissierendif
295a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_XTS),y)
305a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_XTS_MODE
315a913ee7SJerome Forissierendif
325a913ee7SJerome Forissier
335a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_HASHES
345a913ee7SJerome Forissier
355a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_MD5),y)
365a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_MD5
375a913ee7SJerome Forissierendif
385a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_SHA1),y)
395a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_SHA1
405a913ee7SJerome Forissierendif
415a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_SHA224),y)
425a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_SHA224
435a913ee7SJerome Forissierendif
444576dbb3SJens Wiklanderifeq ($(_CFG_CORE_LTC_SHA256_DESC),y)
455a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_SHA256
465a913ee7SJerome Forissierendif
474576dbb3SJens Wiklanderifeq ($(_CFG_CORE_LTC_SHA384_DESC),y)
485a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_SHA384
495a913ee7SJerome Forissierendif
504576dbb3SJens Wiklanderifeq ($(_CFG_CORE_LTC_SHA512_DESC),y)
515a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_SHA512
525a913ee7SJerome Forissierendif
535a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_SHA512_256),y)
545a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_SHA512_256
555a913ee7SJerome Forissierendif
565a913ee7SJerome Forissier
575a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_MACS
585a913ee7SJerome Forissier
595a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_HMAC),y)
605a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_HMAC
615a913ee7SJerome Forissierendif
625a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_CMAC),y)
635a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_OMAC
645a913ee7SJerome Forissierendif
655a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_CCM),y)
665a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_CCM_MODE
675a913ee7SJerome Forissierendif
685a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_GCM),y)
695a913ee7SJerome Forissier	cppflags-lib-y += -DLTC_GCM_MODE
705a913ee7SJerome Forissierendif
715a913ee7SJerome Forissier
725a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_PK
735a913ee7SJerome Forissier
745a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_RSA),y)
755a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_MRSA
765a913ee7SJerome Forissierendif
775a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_DSA),y)
785a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_MDSA
795a913ee7SJerome Forissierendif
805a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_DH),y)
815a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_MDH
825a913ee7SJerome Forissierendif
835a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_ECC),y)
845a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_MECC
855a913ee7SJerome Forissier
865a913ee7SJerome Forissier   # use Shamir's trick for point mul (speeds up signature verification)
875a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_ECC_SHAMIR
885a913ee7SJerome Forissier
895a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_ECC192
905a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_ECC224
915a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_ECC256
925a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_ECC384
935a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_ECC521
945a913ee7SJerome Forissier
955a913ee7SJerome Forissier   # ECC 521 bits is the max supported key size
965a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_MAX_ECC=521
975a913ee7SJerome Forissierendif
9872d11d95SJerome Forissierifneq (,$(filter y,$(_CFG_CORE_LTC_SM2_DSA) $(_CFG_CORE_LTC_SM2_PKE)))
99f9a78287SJerome Forissier   cppflags-lib-y += -DLTC_ECC_SM2
100f9a78287SJerome Forissierendif
1015a913ee7SJerome Forissier
1025a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_PKCS
1035a913ee7SJerome Forissier
1045a913ee7SJerome Forissierifneq (,$(filter y,$(_CFG_CORE_LTC_RSA) $(_CFG_CORE_LTC_DSA) $(_CFG_CORE_LTC_ECC) $(_CFG_CORE_LTC_HASH)))
1055a913ee7SJerome Forissier   cppflags-lib-y += -DLTC_DER
1065a913ee7SJerome Forissierendif
1075a913ee7SJerome Forissier
1085a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_PRNGS -DLTC_FORTUNA
1095a913ee7SJerome Forissier
1105a913ee7SJerome Forissiercflags-lib-$(_CFG_CORE_LTC_SIZE_OPTIMIZATION) += -Os
111b0104773SPascal Brand
112b0104773SPascal Brandsubdirs-y += src
1136648f482SJens Wiklander
114a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_HASH) += hash.c
115a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_HMAC) += hmac.c
116a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_CMAC) += cmac.c
117a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_ECB) += ecb.c
118a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_CBC) += cbc.c
119a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_CTR) += ctr.c
120a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_XTS) += xts.c
121a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_CCM) += ccm.c
122a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_GCM) += gcm.c
123a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_DSA) += dsa.c
124a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_ECC) += ecc.c
125a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_RSA) += rsa.c
126a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_DH) += dh.c
127a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_AES) += aes.c
128f9429266SJens Wiklandersrcs-$(_CFG_CORE_LTC_AES_ACCEL) += aes_accel.c
129*2b49b295SJens Wiklandersrcs-$(_CFG_CORE_LTC_SHA1_ACCEL) += sha1_accel.c
13076c7ba4bSJerome Forissiersrcs-$(_CFG_CORE_LTC_SM2_DSA) += sm2-dsa.c
131f9a78287SJerome Forissiersrcs-$(_CFG_CORE_LTC_SM2_PKE) += sm2-pke.c
132c2c877dbSJerome Forissiersrcs-$(_CFG_CORE_LTC_SM2_KEP) += sm2-kep.c
133c2c877dbSJerome Forissiersrcs-$(if $(filter y,$(_CFG_CORE_LTC_SM2_PKE) $(_CFG_CORE_LTC_SM2_KEP),y),y) += sm2_kdf.c
13478887e60SJens Wiklander
1359e8c816aSJerome Forissierifeq ($(_CFG_CORE_LTC_ACIPHER),y)
13678887e60SJens Wiklandersrcs-y += mpi_desc.c
13778887e60SJens Wiklanderendif
13878887e60SJens Wiklander
13978887e60SJens Wiklandersrcs-y += tomcrypt.c
14078887e60SJens Wiklander
141