1global-incdirs-y += include 2global-incdirs-y += src/headers 3 4cflags-lib-y += -Wno-declaration-after-statement 5 6cppflags-lib-y += -DARGTYPE=4 # Make LTC_ARGCHK() return on error 7cppflags-lib-y += -DLTC_CLEAN_STACK -DLTC_NO_TEST -DLTC_NO_PROTOTYPES 8cppflags-lib-y += -DLTC_NO_TABLES -DLTC_HASH_HELPERS 9cppflags-lib-$(_CFG_CORE_LTC_SIZE_OPTIMIZATION) += -DLTC_SMALL_CODE 10 11cppflags-lib-y += -DLTC_NO_CIPHERS 12 13ifeq ($(_CFG_CORE_LTC_AES_DESC),y) 14 cppflags-lib-y += -DLTC_RIJNDAEL 15endif 16ifeq ($(_CFG_CORE_LTC_DES),y) 17 cppflags-lib-y += -DLTC_DES 18endif 19 20cppflags-lib-y += -DLTC_NO_MODES 21 22ifeq ($(_CFG_CORE_LTC_ECB),y) 23 cppflags-lib-y += -DLTC_ECB_MODE 24endif 25ifeq ($(_CFG_CORE_LTC_CBC),y) 26 cppflags-lib-y += -DLTC_CBC_MODE 27endif 28ifeq ($(_CFG_CORE_LTC_CTR),y) 29 cppflags-lib-y += -DLTC_CTR_MODE 30endif 31ifeq ($(_CFG_CORE_LTC_XTS),y) 32 cppflags-lib-y += -DLTC_XTS_MODE 33endif 34 35cppflags-lib-y += -DLTC_NO_HASHES 36 37ifeq ($(_CFG_CORE_LTC_MD5),y) 38 cppflags-lib-y += -DLTC_MD5 39endif 40ifeq ($(_CFG_CORE_LTC_SHA1),y) 41 cppflags-lib-y += -DLTC_SHA1 42endif 43ifeq ($(_CFG_CORE_LTC_SHA224),y) 44 cppflags-lib-y += -DLTC_SHA224 45endif 46ifeq ($(_CFG_CORE_LTC_SHA256_DESC),y) 47 cppflags-lib-y += -DLTC_SHA256 48endif 49ifeq ($(_CFG_CORE_LTC_SHA384_DESC),y) 50 cppflags-lib-y += -DLTC_SHA384 51endif 52ifeq ($(_CFG_CORE_LTC_SHA512_DESC),y) 53 cppflags-lib-y += -DLTC_SHA512 54endif 55ifeq ($(_CFG_CORE_LTC_SHA512_256),y) 56 cppflags-lib-y += -DLTC_SHA512_256 57endif 58 59cppflags-lib-y += -DLTC_NO_MACS 60 61ifeq ($(_CFG_CORE_LTC_HMAC),y) 62 cppflags-lib-y += -DLTC_HMAC 63endif 64ifeq ($(_CFG_CORE_LTC_CMAC),y) 65 cppflags-lib-y += -DLTC_OMAC 66endif 67ifeq ($(_CFG_CORE_LTC_CCM),y) 68 cppflags-lib-y += -DLTC_CCM_MODE 69endif 70ifeq ($(_CFG_CORE_LTC_GCM),y) 71 cppflags-lib-y += -DLTC_GCM_MODE 72endif 73 74cppflags-lib-y += -DLTC_NO_PK 75 76ifeq ($(_CFG_CORE_LTC_RSA),y) 77 cppflags-lib-y += -DLTC_MRSA 78endif 79ifeq ($(_CFG_CORE_LTC_DSA),y) 80 cppflags-lib-y += -DLTC_MDSA 81endif 82ifeq ($(_CFG_CORE_LTC_DH),y) 83 cppflags-lib-y += -DLTC_MDH 84endif 85ifeq ($(_CFG_CORE_LTC_ECC),y) 86 cppflags-lib-y += -DLTC_MECC 87 88 # use Shamir's trick for point mul (speeds up signature verification) 89 cppflags-lib-y += -DLTC_ECC_SHAMIR 90 91 cppflags-lib-y += -DLTC_ECC192 92 cppflags-lib-y += -DLTC_ECC224 93 cppflags-lib-y += -DLTC_ECC256 94 cppflags-lib-y += -DLTC_ECC384 95 cppflags-lib-y += -DLTC_ECC521 96 97 # ECC 521 bits is the max supported key size 98 cppflags-lib-y += -DLTC_MAX_ECC=521 99endif 100ifneq (,$(filter y,$(_CFG_CORE_LTC_SM2_DSA) $(_CFG_CORE_LTC_SM2_PKE))) 101 cppflags-lib-y += -DLTC_ECC_SM2 102endif 103 104cppflags-lib-y += -DLTC_NO_PKCS 105 106cppflags-lib-y += -DLTC_DER 107 108cppflags-lib-y += -DLTC_NO_PRNGS -DLTC_FORTUNA 109 110cflags-lib-$(_CFG_CORE_LTC_SIZE_OPTIMIZATION) += -Os 111 112subdirs-y += src 113 114srcs-$(_CFG_CORE_LTC_HASH) += hash.c 115srcs-$(_CFG_CORE_LTC_HMAC) += hmac.c 116srcs-$(_CFG_CORE_LTC_CMAC) += cmac.c 117srcs-$(_CFG_CORE_LTC_ECB) += ecb.c 118srcs-$(_CFG_CORE_LTC_CBC) += cbc.c 119srcs-$(_CFG_CORE_LTC_CTR) += ctr.c 120srcs-$(_CFG_CORE_LTC_XTS) += xts.c 121srcs-$(_CFG_CORE_LTC_CCM) += ccm.c 122srcs-$(_CFG_CORE_LTC_GCM) += gcm.c 123srcs-$(_CFG_CORE_LTC_DSA) += dsa.c 124srcs-$(_CFG_CORE_LTC_ECC) += ecc.c 125srcs-$(_CFG_CORE_LTC_RSA) += rsa.c 126srcs-$(_CFG_CORE_LTC_DH) += dh.c 127srcs-$(_CFG_CORE_LTC_AES) += aes.c 128srcs-$(_CFG_CORE_LTC_AES_ACCEL) += aes_accel.c 129srcs-$(_CFG_CORE_LTC_SHA1_ACCEL) += sha1_accel.c 130ifeq ($(_CFG_CORE_LTC_SHA256_DESC),y) 131srcs-$(_CFG_CORE_LTC_SHA256_ACCEL) += sha256_accel.c 132endif 133srcs-$(_CFG_CORE_LTC_SM2_DSA) += sm2-dsa.c 134srcs-$(_CFG_CORE_LTC_SM2_PKE) += sm2-pke.c 135srcs-$(_CFG_CORE_LTC_SM2_KEP) += sm2-kep.c 136 137ifeq ($(_CFG_CORE_LTC_ACIPHER),y) 138srcs-y += mpi_desc.c 139endif 140 141srcs-y += tomcrypt.c 142 143