1b0104773SPascal Brandglobal-incdirs-y += include 25a913ee7SJerome Forissierglobal-incdirs-y += src/headers 35a913ee7SJerome Forissier 45e2cacd0SJens Wiklandercflags-lib-y += -Wno-declaration-after-statement 55e2cacd0SJens Wiklander 65a913ee7SJerome Forissiercppflags-lib-y += -DARGTYPE=4 # Make LTC_ARGCHK() return on error 78411e6adSJerome Forissiercppflags-lib-y += -DLTC_NO_TEST -DLTC_NO_PROTOTYPES 85a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_TABLES -DLTC_HASH_HELPERS 98411e6adSJerome Forissiercppflags-lib-y += -DLTC_NO_MISC 108411e6adSJerome Forissiercppflags-lib-y += -DLTC_HMAC 115a913ee7SJerome Forissiercppflags-lib-$(_CFG_CORE_LTC_SIZE_OPTIMIZATION) += -DLTC_SMALL_CODE 125a913ee7SJerome Forissier 135a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_CIPHERS 145a913ee7SJerome Forissier 154576dbb3SJens Wiklanderifeq ($(_CFG_CORE_LTC_AES_DESC),y) 165a913ee7SJerome Forissier cppflags-lib-y += -DLTC_RIJNDAEL 175a913ee7SJerome Forissierendif 185a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_DES),y) 195a913ee7SJerome Forissier cppflags-lib-y += -DLTC_DES 205a913ee7SJerome Forissierendif 215a913ee7SJerome Forissier 225a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_MODES 235a913ee7SJerome Forissier 245a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_ECB),y) 255a913ee7SJerome Forissier cppflags-lib-y += -DLTC_ECB_MODE 265a913ee7SJerome Forissierendif 275a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_CBC),y) 285a913ee7SJerome Forissier cppflags-lib-y += -DLTC_CBC_MODE 295a913ee7SJerome Forissierendif 305a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_CTR),y) 315a913ee7SJerome Forissier cppflags-lib-y += -DLTC_CTR_MODE 325a913ee7SJerome Forissierendif 335a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_XTS),y) 345a913ee7SJerome Forissier cppflags-lib-y += -DLTC_XTS_MODE 355a913ee7SJerome Forissierendif 365a913ee7SJerome Forissier 375a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_HASHES 385a913ee7SJerome Forissier 395a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_MD5),y) 405a913ee7SJerome Forissier cppflags-lib-y += -DLTC_MD5 415a913ee7SJerome Forissierendif 425a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_SHA1),y) 435a913ee7SJerome Forissier cppflags-lib-y += -DLTC_SHA1 445a913ee7SJerome Forissierendif 455a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_SHA224),y) 465a913ee7SJerome Forissier cppflags-lib-y += -DLTC_SHA224 475a913ee7SJerome Forissierendif 484576dbb3SJens Wiklanderifeq ($(_CFG_CORE_LTC_SHA256_DESC),y) 495a913ee7SJerome Forissier cppflags-lib-y += -DLTC_SHA256 505a913ee7SJerome Forissierendif 514576dbb3SJens Wiklanderifeq ($(_CFG_CORE_LTC_SHA384_DESC),y) 525a913ee7SJerome Forissier cppflags-lib-y += -DLTC_SHA384 535a913ee7SJerome Forissierendif 544576dbb3SJens Wiklanderifeq ($(_CFG_CORE_LTC_SHA512_DESC),y) 555a913ee7SJerome Forissier cppflags-lib-y += -DLTC_SHA512 565a913ee7SJerome Forissierendif 575a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_SHA512_256),y) 585a913ee7SJerome Forissier cppflags-lib-y += -DLTC_SHA512_256 595a913ee7SJerome Forissierendif 60*1478437eSJens Wiklandercppflags-lib-$(_CFG_CORE_LTC_SHA3_DESC) += -DLTC_SHA3 61*1478437eSJens Wiklander 625a913ee7SJerome Forissier 635a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_MACS 645a913ee7SJerome Forissier 655a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_HMAC),y) 665a913ee7SJerome Forissier cppflags-lib-y += -DLTC_HMAC 675a913ee7SJerome Forissierendif 685a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_CMAC),y) 695a913ee7SJerome Forissier cppflags-lib-y += -DLTC_OMAC 705a913ee7SJerome Forissierendif 715a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_CCM),y) 725a913ee7SJerome Forissier cppflags-lib-y += -DLTC_CCM_MODE 735a913ee7SJerome Forissierendif 745a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_GCM),y) 755a913ee7SJerome Forissier cppflags-lib-y += -DLTC_GCM_MODE 765a913ee7SJerome Forissierendif 775a913ee7SJerome Forissier 785a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_PK 795a913ee7SJerome Forissier 805a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_RSA),y) 815a913ee7SJerome Forissier cppflags-lib-y += -DLTC_MRSA 825a913ee7SJerome Forissierendif 835a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_DSA),y) 845a913ee7SJerome Forissier cppflags-lib-y += -DLTC_MDSA 855a913ee7SJerome Forissierendif 865a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_DH),y) 875a913ee7SJerome Forissier cppflags-lib-y += -DLTC_MDH 885a913ee7SJerome Forissierendif 895a913ee7SJerome Forissierifeq ($(_CFG_CORE_LTC_ECC),y) 905a913ee7SJerome Forissier cppflags-lib-y += -DLTC_MECC 915a913ee7SJerome Forissier 925a913ee7SJerome Forissier # use Shamir's trick for point mul (speeds up signature verification) 935a913ee7SJerome Forissier cppflags-lib-y += -DLTC_ECC_SHAMIR 945a913ee7SJerome Forissier 955a913ee7SJerome Forissier cppflags-lib-y += -DLTC_ECC192 965a913ee7SJerome Forissier cppflags-lib-y += -DLTC_ECC224 975a913ee7SJerome Forissier cppflags-lib-y += -DLTC_ECC256 985a913ee7SJerome Forissier cppflags-lib-y += -DLTC_ECC384 995a913ee7SJerome Forissier cppflags-lib-y += -DLTC_ECC521 100a116848bSValerii Chubar cppflags-lib-y += -DLTC_CURVE25519 1015a913ee7SJerome Forissier 1025a913ee7SJerome Forissier # ECC 521 bits is the max supported key size 1035a913ee7SJerome Forissier cppflags-lib-y += -DLTC_MAX_ECC=521 1045a913ee7SJerome Forissierendif 10572d11d95SJerome Forissierifneq (,$(filter y,$(_CFG_CORE_LTC_SM2_DSA) $(_CFG_CORE_LTC_SM2_PKE))) 106f9a78287SJerome Forissier cppflags-lib-y += -DLTC_ECC_SM2 107f9a78287SJerome Forissierendif 1085a913ee7SJerome Forissier 10915cb2782SSohaib ul Hassancppflags-lib-$(_CFG_CORE_LTC_X25519) += -DLTC_CURVE25519 110a116848bSValerii Chubarcppflags-lib-$(_CFG_CORE_LTC_ED25519) += -DLTC_CURVE25519 11115cb2782SSohaib ul Hassan 1125a913ee7SJerome Forissiercppflags-lib-y += -DLTC_NO_PRNGS -DLTC_FORTUNA 1135a913ee7SJerome Forissier 1145a913ee7SJerome Forissiercflags-lib-$(_CFG_CORE_LTC_SIZE_OPTIMIZATION) += -Os 115b0104773SPascal Brand 116b0104773SPascal Brandsubdirs-y += src 1176648f482SJens Wiklander 118a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_HASH) += hash.c 119a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_HMAC) += hmac.c 120a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_CMAC) += cmac.c 121a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_ECB) += ecb.c 122a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_CBC) += cbc.c 123a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_CTR) += ctr.c 124a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_XTS) += xts.c 125a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_CCM) += ccm.c 126a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_GCM) += gcm.c 127a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_DSA) += dsa.c 128a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_ECC) += ecc.c 129a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_RSA) += rsa.c 130a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_DH) += dh.c 131a1cbb728SJens Wiklandersrcs-$(_CFG_CORE_LTC_AES) += aes.c 132f9429266SJens Wiklandersrcs-$(_CFG_CORE_LTC_AES_ACCEL) += aes_accel.c 1332b49b295SJens Wiklandersrcs-$(_CFG_CORE_LTC_SHA1_ACCEL) += sha1_accel.c 134a828d70fSJens Wiklanderifeq ($(_CFG_CORE_LTC_SHA256_DESC),y) 135a828d70fSJens Wiklandersrcs-$(_CFG_CORE_LTC_SHA256_ACCEL) += sha256_accel.c 136a828d70fSJens Wiklanderendif 13765d11b31SJens Wiklanderifeq ($(_CFG_CORE_LTC_SHA512_DESC),y) 13865d11b31SJens Wiklandersrcs-$(_CFG_CORE_LTC_SHA512_ACCEL) += sha512_accel.c 13965d11b31SJens Wiklanderendif 140*1478437eSJens Wiklanderifeq ($(_CFG_CORE_LTC_SHA3_DESC),y) 141*1478437eSJens Wiklandersrcs-y += shake.c 142*1478437eSJens Wiklandersrcs-$(_CFG_CORE_LTC_SHA3_ACCEL) += sha3_accel.c 143*1478437eSJens Wiklanderendif 14476c7ba4bSJerome Forissiersrcs-$(_CFG_CORE_LTC_SM2_DSA) += sm2-dsa.c 145f9a78287SJerome Forissiersrcs-$(_CFG_CORE_LTC_SM2_PKE) += sm2-pke.c 146c2c877dbSJerome Forissiersrcs-$(_CFG_CORE_LTC_SM2_KEP) += sm2-kep.c 14715cb2782SSohaib ul Hassansrcs-$(_CFG_CORE_LTC_X25519) += x25519.c 148a116848bSValerii Chubarsrcs-$(_CFG_CORE_LTC_ED25519) += ed25519.c 1499e8c816aSJerome Forissierifeq ($(_CFG_CORE_LTC_ACIPHER),y) 15078887e60SJens Wiklandersrcs-y += mpi_desc.c 15178887e60SJens Wiklanderendif 15278887e60SJens Wiklander 15378887e60SJens Wiklandersrcs-y += tomcrypt.c 15478887e60SJens Wiklander 155