1global-incdirs-y += include 2global-incdirs-y += src/headers 3 4cppflags-lib-y += -DARGTYPE=4 # Make LTC_ARGCHK() return on error 5cppflags-lib-y += -DLTC_NO_TEST -DLTC_NO_PROTOTYPES 6cppflags-lib-y += -DLTC_NO_TABLES -DLTC_HASH_HELPERS 7cppflags-lib-y += -DLTC_NO_MISC 8cppflags-lib-y += -DLTC_HMAC 9cppflags-lib-$(_CFG_CORE_LTC_SIZE_OPTIMIZATION) += -DLTC_SMALL_CODE 10cppflags-lib-y += -DLTC_NO_CIPHERS 11cppflags-lib-y += -DLTC_NO_MODES 12cppflags-lib-y += -DLTC_NO_HASHES 13cppflags-lib-y += -DLTC_NO_MACS 14cppflags-lib-y += -DLTC_NO_PK 15cppflags-lib-y += -DLTC_NO_PRNGS -DLTC_FORTUNA 16cflags-lib-$(_CFG_CORE_LTC_SIZE_OPTIMIZATION) += -Os 17 18srcs-y += tomcrypt.c 19srcs-y += src/misc/burn_stack.c 20srcs-y += src/misc/error_to_string.c 21srcs-y += src/misc/mem_neq.c 22srcs-y += src/misc/zeromem.c 23srcs-y += src/misc/base64/base64_decode.c 24srcs-y += src/misc/base64/base64_encode.c 25srcs-y += src/misc/crypt/crypt.c 26srcs-y += src/misc/crypt/crypt_cipher_descriptor.c 27srcs-y += src/misc/crypt/crypt_cipher_is_valid.c 28srcs-y += src/misc/crypt/crypt_find_cipher_any.c 29srcs-y += src/misc/crypt/crypt_find_cipher.c 30srcs-y += src/misc/crypt/crypt_find_cipher_id.c 31srcs-y += src/misc/crypt/crypt_find_hash_any.c 32srcs-y += src/misc/crypt/crypt_find_hash.c 33srcs-y += src/misc/crypt/crypt_find_hash_id.c 34srcs-y += src/misc/crypt/crypt_find_hash_oid.c 35srcs-y += src/misc/crypt/crypt_find_prng.c 36srcs-y += src/misc/crypt/crypt_fsa.c 37srcs-y += src/misc/crypt/crypt_hash_descriptor.c 38srcs-y += src/misc/crypt/crypt_hash_is_valid.c 39srcs-y += src/misc/crypt/crypt_prng_descriptor.c 40srcs-y += src/misc/crypt/crypt_prng_is_valid.c 41srcs-y += src/misc/crypt/crypt_register_cipher.c 42srcs-y += src/misc/crypt/crypt_register_hash.c 43srcs-y += src/misc/crypt/crypt_register_prng.c 44srcs-y += src/misc/crypt/crypt_unregister_cipher.c 45srcs-y += src/misc/crypt/crypt_unregister_hash.c 46srcs-y += src/misc/crypt/crypt_unregister_prng.c 47srcs-y += src/misc/pkcs12/pkcs12_kdf.c 48srcs-y += src/misc/pkcs12/pkcs12_utf8_to_utf16.c 49srcs-y += src/misc/pkcs5/pkcs_5_1.c 50srcs-y += src/misc/pkcs5/pkcs_5_2.c 51srcs-y += src/misc/ssh/ssh_decode_sequence_multi.c 52srcs-y += src/misc/ssh/ssh_encode_sequence_multi.c 53 54cppflags-lib-$(_CFG_CORE_LTC_AES_DESC) += -DLTC_RIJNDAEL 55srcs-$(_CFG_CORE_LTC_AES) += aes.c 56ifeq ($(_CFG_CORE_LTC_AES_ACCEL),y) 57srcs-$(_CFG_CORE_LTC_AES_DESC) += aes_accel.c 58else 59srcs-$(_CFG_CORE_LTC_AES_DESC) += src/ciphers/aes/aes.c 60endif 61 62cppflags-lib-$(_CFG_CORE_LTC_DES) += -DLTC_DES 63srcs-$(_CFG_CORE_LTC_DES) += src/ciphers/des.c 64 65cppflags-lib-$(_CFG_CORE_LTC_CCM) += -DLTC_CCM_MODE 66srcs-$(_CFG_CORE_LTC_CCM) += ccm.c 67srcs-$(_CFG_CORE_LTC_CCM) += src/encauth/ccm/ccm_init.c 68srcs-$(_CFG_CORE_LTC_CCM) += src/encauth/ccm/ccm_add_nonce.c 69srcs-$(_CFG_CORE_LTC_CCM) += src/encauth/ccm/ccm_add_aad.c 70srcs-$(_CFG_CORE_LTC_CCM) += src/encauth/ccm/ccm_process.c 71srcs-$(_CFG_CORE_LTC_CCM) += src/encauth/ccm/ccm_done.c 72srcs-$(_CFG_CORE_LTC_CCM) += src/encauth/ccm/ccm_reset.c 73 74cppflags-lib-$(_CFG_CORE_LTC_GCM) += -DLTC_GCM_MODE 75srcs-$(_CFG_CORE_LTC_GCM) += gcm.c 76srcs-$(_CFG_CORE_LTC_GCM) += src/encauth/gcm/gcm_add_aad.c 77srcs-$(_CFG_CORE_LTC_GCM) += src/encauth/gcm/gcm_add_iv.c 78srcs-$(_CFG_CORE_LTC_GCM) += src/encauth/gcm/gcm_done.c 79srcs-$(_CFG_CORE_LTC_GCM) += src/encauth/gcm/gcm_gf_mult.c 80srcs-$(_CFG_CORE_LTC_GCM) += src/encauth/gcm/gcm_init.c 81srcs-$(_CFG_CORE_LTC_GCM) += src/encauth/gcm/gcm_memory.c 82ifeq ($(_CFG_CORE_LTC_CE),y) 83srcs-$(_CFG_CORE_LTC_GCM) += src/encauth/gcm/gcm_mult_h_arm_ce.c 84else 85srcs-$(_CFG_CORE_LTC_GCM) += src/encauth/gcm/gcm_mult_h.c 86endif 87srcs-$(_CFG_CORE_LTC_GCM) += src/encauth/gcm/gcm_process.c 88srcs-$(_CFG_CORE_LTC_GCM) += src/encauth/gcm/gcm_reset.c 89 90srcs-$(_CFG_CORE_LTC_HASH) += hash.c 91srcs-$(_CFG_CORE_LTC_HASH) += src/hashes/helper/hash_memory.c 92srcs-$(_CFG_CORE_LTC_HASH) += src/hashes/helper/hash_memory_multi.c 93 94cppflags-lib-$(_CFG_CORE_LTC_MD5_DESC) += -DLTC_MD5 95srcs-$(_CFG_CORE_LTC_MD5_DESC) += src/hashes/md5.c 96 97cppflags-lib-$(_CFG_CORE_LTC_SHA1_DESC) += -DLTC_SHA1 98ifeq ($(_CFG_CORE_LTC_SHA1_ACCEL),y) 99srcs-$(_CFG_CORE_LTC_SHA1_DESC) += sha1_accel.c 100else 101srcs-$(_CFG_CORE_LTC_SHA1_DESC) += src/hashes/sha1.c 102endif 103 104cppflags-lib-$(_CFG_CORE_LTC_SHA3_DESC) += -DLTC_SHA3 105ifeq ($(_CFG_CORE_LTC_SHA3_ACCEL),y) 106srcs-$(_CFG_CORE_LTC_SHA3_DESC) += sha3_accel.c 107else 108srcs-$(_CFG_CORE_LTC_SHA3_DESC) += src/hashes/sha3.c 109endif 110srcs-$(_CFG_CORE_LTC_SHA3_DESC) += src/hashes/sha3_test.c 111srcs-$(_CFG_CORE_LTC_SHA3_DESC) += shake.c 112 113cppflags-lib-$(_CFG_CORE_LTC_SHA224_DESC) += -DLTC_SHA224 114srcs-$(_CFG_CORE_LTC_SHA224_DESC) += src/hashes/sha2/sha224.c 115 116cppflags-lib-$(_CFG_CORE_LTC_SHA256_DESC) += -DLTC_SHA256 117ifeq ($(_CFG_CORE_LTC_SHA256_ACCEL),y) 118srcs-$(_CFG_CORE_LTC_SHA256_DESC) += sha256_accel.c 119else 120srcs-$(_CFG_CORE_LTC_SHA256_DESC) += src/hashes/sha2/sha256.c 121endif 122 123cppflags-lib-$(_CFG_CORE_LTC_SHA384_DESC) += -DLTC_SHA384 124srcs-$(_CFG_CORE_LTC_SHA384_DESC) += src/hashes/sha2/sha384.c 125 126cppflags-lib-$(_CFG_CORE_LTC_SHA512_DESC) += -DLTC_SHA512 127ifeq ($(_CFG_CORE_LTC_SHA512_ACCEL),y) 128srcs-$(_CFG_CORE_LTC_SHA512_DESC) += sha512_accel.c 129else 130srcs-$(_CFG_CORE_LTC_SHA512_DESC) += src/hashes/sha2/sha512.c 131endif 132 133cppflags-lib-$(_CFG_CORE_LTC_SHA512_256) += -DLTC_SHA512_256 134srcs-$(_CFG_CORE_LTC_SHA512_256) += src/hashes/sha2/sha512_256.c 135 136cppflags-lib-$(_CFG_CORE_LTC_HMAC) += -DLTC_HMAC 137srcs-$(_CFG_CORE_LTC_HMAC) += hmac.c 138srcs-$(_CFG_CORE_LTC_HMAC) += src/mac/hmac/hmac_done.c 139srcs-$(_CFG_CORE_LTC_HMAC) += src/mac/hmac/hmac_init.c 140srcs-$(_CFG_CORE_LTC_HMAC) += src/mac/hmac/hmac_memory.c 141srcs-$(_CFG_CORE_LTC_HMAC) += src/mac/hmac/hmac_memory_multi.c 142srcs-$(_CFG_CORE_LTC_HMAC) += src/mac/hmac/hmac_process.c 143 144cppflags-lib-$(_CFG_CORE_LTC_CMAC) += -DLTC_OMAC 145srcs-$(_CFG_CORE_LTC_CMAC) += cmac.c 146srcs-$(_CFG_CORE_LTC_CMAC) += src/mac/omac/omac_done.c 147srcs-$(_CFG_CORE_LTC_CMAC) += src/mac/omac/omac_init.c 148srcs-$(_CFG_CORE_LTC_CMAC) += src/mac/omac/omac_memory.c 149srcs-$(_CFG_CORE_LTC_CMAC) += src/mac/omac/omac_memory_multi.c 150srcs-$(_CFG_CORE_LTC_CMAC) += src/mac/omac/omac_process.c 151 152srcs-$(_CFG_CORE_LTC_ACIPHER) += src/math/multi.c 153srcs-$(_CFG_CORE_LTC_ACIPHER) += src/math/rand_prime.c 154srcs-$(_CFG_CORE_LTC_ACIPHER) += src/math/rand_bn.c 155ifeq ($(_CFG_CORE_LTC_ECC),y) 156srcs-$(_CFG_CORE_LTC_ACIPHER) += src/math/fp/ltc_ecc_fp_mulmod.c 157endif 158 159 160cppflags-lib-$(_CFG_CORE_LTC_CBC) += -DLTC_CBC_MODE 161srcs-$(_CFG_CORE_LTC_CBC) += cbc.c 162srcs-$(_CFG_CORE_LTC_CBC) += src/modes/cbc/cbc_decrypt.c 163srcs-$(_CFG_CORE_LTC_CBC) += src/modes/cbc/cbc_done.c 164srcs-$(_CFG_CORE_LTC_CBC) += src/modes/cbc/cbc_encrypt.c 165srcs-$(_CFG_CORE_LTC_CBC) += src/modes/cbc/cbc_getiv.c 166srcs-$(_CFG_CORE_LTC_CBC) += src/modes/cbc/cbc_setiv.c 167srcs-$(_CFG_CORE_LTC_CBC) += src/modes/cbc/cbc_start.c 168 169cppflags-lib-$(_CFG_CORE_LTC_CTR) += -DLTC_CTR_MODE 170srcs-$(_CFG_CORE_LTC_CTR) += ctr.c 171srcs-$(_CFG_CORE_LTC_CTR) += src/modes/ctr/ctr_decrypt.c 172srcs-$(_CFG_CORE_LTC_CTR) += src/modes/ctr/ctr_done.c 173srcs-$(_CFG_CORE_LTC_CTR) += src/modes/ctr/ctr_encrypt.c 174srcs-$(_CFG_CORE_LTC_CTR) += src/modes/ctr/ctr_getiv.c 175srcs-$(_CFG_CORE_LTC_CTR) += src/modes/ctr/ctr_setiv.c 176srcs-$(_CFG_CORE_LTC_CTR) += src/modes/ctr/ctr_start.c 177 178cppflags-lib-$(_CFG_CORE_LTC_ECB) += -DLTC_ECB_MODE 179srcs-$(_CFG_CORE_LTC_ECB) += ecb.c 180srcs-$(_CFG_CORE_LTC_ECB) += src/modes/ecb/ecb_decrypt.c 181srcs-$(_CFG_CORE_LTC_ECB) += src/modes/ecb/ecb_done.c 182srcs-$(_CFG_CORE_LTC_ECB) += src/modes/ecb/ecb_encrypt.c 183srcs-$(_CFG_CORE_LTC_ECB) += src/modes/ecb/ecb_start.c 184 185cppflags-lib-$(_CFG_CORE_LTC_XTS) += -DLTC_XTS_MODE 186srcs-$(_CFG_CORE_LTC_XTS) += xts.c 187srcs-$(_CFG_CORE_LTC_XTS) += src/modes/xts/xts_decrypt.c 188srcs-$(_CFG_CORE_LTC_XTS) += src/modes/xts/xts_done.c 189srcs-$(_CFG_CORE_LTC_XTS) += src/modes/xts/xts_encrypt.c 190srcs-$(_CFG_CORE_LTC_XTS) += src/modes/xts/xts_init.c 191srcs-$(_CFG_CORE_LTC_XTS) += src/modes/xts/xts_mult_x.c 192 193srcs-$(_CFG_CORE_LTC_ACIPHER) += mpi_desc.c 194cflags-mpi_desc.c-y += -Wno-declaration-after-statement 195cppflags-mpi_desc.c-y += -DMBEDTLS_ALLOW_PRIVATE_ACCESS 196 197ifeq ($(_CFG_CORE_LTC_ASN1),y) 198srcs-y += src/pk/asn1/der/bit/der_decode_bit_string.c 199srcs-y += src/pk/asn1/der/bit/der_encode_bit_string.c 200srcs-y += src/pk/asn1/der/bit/der_length_bit_string.c 201srcs-y += src/pk/asn1/der/bit/der_decode_raw_bit_string.c 202srcs-y += src/pk/asn1/der/bit/der_encode_raw_bit_string.c 203srcs-y += src/pk/asn1/der/boolean/der_decode_boolean.c 204srcs-y += src/pk/asn1/der/boolean/der_encode_boolean.c 205srcs-y += src/pk/asn1/der/boolean/der_length_boolean.c 206srcs-y += src/pk/asn1/der/choice/der_decode_choice.c 207srcs-y += src/pk/asn1/der/custom_type/der_decode_custom_type.c 208srcs-y += src/pk/asn1/der/custom_type/der_encode_custom_type.c 209srcs-y += src/pk/asn1/der/custom_type/der_length_custom_type.c 210srcs-y += src/pk/asn1/der/general/der_asn1_maps.c 211srcs-y += src/pk/asn1/der/general/der_decode_asn1_length.c 212srcs-y += src/pk/asn1/der/general/der_decode_asn1_identifier.c 213srcs-y += src/pk/asn1/der/general/der_encode_asn1_identifier.c 214srcs-y += src/pk/asn1/der/general/der_encode_asn1_length.c 215srcs-y += src/pk/asn1/der/general/der_length_asn1_identifier.c 216srcs-y += src/pk/asn1/der/general/der_length_asn1_length.c 217srcs-y += src/pk/asn1/der/generalizedtime/der_encode_generalizedtime.c 218srcs-y += src/pk/asn1/der/generalizedtime/der_decode_generalizedtime.c 219srcs-y += src/pk/asn1/der/generalizedtime/der_length_generalizedtime.c 220srcs-y += src/pk/asn1/der/ia5/der_decode_ia5_string.c 221srcs-y += src/pk/asn1/der/ia5/der_encode_ia5_string.c 222srcs-y += src/pk/asn1/der/ia5/der_length_ia5_string.c 223srcs-y += src/pk/asn1/der/integer/der_decode_integer.c 224srcs-y += src/pk/asn1/der/integer/der_encode_integer.c 225srcs-y += src/pk/asn1/der/integer/der_length_integer.c 226srcs-y += src/pk/asn1/der/object_identifier/der_decode_object_identifier.c 227srcs-y += src/pk/asn1/der/object_identifier/der_encode_object_identifier.c 228srcs-y += src/pk/asn1/der/object_identifier/der_length_object_identifier.c 229srcs-y += src/pk/asn1/der/octet/der_decode_octet_string.c 230srcs-y += src/pk/asn1/der/octet/der_encode_octet_string.c 231srcs-y += src/pk/asn1/der/octet/der_length_octet_string.c 232srcs-y += src/pk/asn1/der/printable_string/der_decode_printable_string.c 233srcs-y += src/pk/asn1/der/printable_string/der_encode_printable_string.c 234srcs-y += src/pk/asn1/der/printable_string/der_length_printable_string.c 235srcs-y += src/pk/asn1/der/sequence/der_decode_sequence_ex.c 236srcs-y += src/pk/asn1/der/sequence/der_decode_sequence_flexi.c 237srcs-y += src/pk/asn1/der/sequence/der_decode_sequence_multi.c 238srcs-y += src/pk/asn1/der/sequence/der_encode_sequence_ex.c 239srcs-y += src/pk/asn1/der/sequence/der_encode_sequence_multi.c 240srcs-y += src/pk/asn1/der/sequence/der_length_sequence.c 241srcs-y += src/pk/asn1/der/sequence/der_sequence_free.c 242srcs-y += src/pk/asn1/der/set/der_encode_set.c 243srcs-y += src/pk/asn1/der/set/der_encode_setof.c 244srcs-y += src/pk/asn1/der/short_integer/der_decode_short_integer.c 245srcs-y += src/pk/asn1/der/short_integer/der_encode_short_integer.c 246srcs-y += src/pk/asn1/der/short_integer/der_length_short_integer.c 247srcs-y += src/pk/asn1/der/utctime/der_decode_utctime.c 248srcs-y += src/pk/asn1/der/utctime/der_encode_utctime.c 249srcs-y += src/pk/asn1/der/utctime/der_length_utctime.c 250srcs-y += src/pk/asn1/der/utf8/der_decode_utf8_string.c 251srcs-y += src/pk/asn1/der/utf8/der_encode_utf8_string.c 252srcs-y += src/pk/asn1/der/utf8/der_length_utf8_string.c 253srcs-y += src/pk/asn1/der/teletex_string/der_decode_teletex_string.c 254srcs-y += src/pk/asn1/der/teletex_string/der_length_teletex_string.c 255srcs-y += src/pk/asn1/oid/pk_oid_cmp.c 256srcs-y += src/pk/asn1/oid/pk_oid_str.c 257endif 258 259cppflags-lib-$(_CFG_CORE_LTC_DSA) += -DLTC_MDSA 260srcs-$(_CFG_CORE_LTC_DSA) += dsa.c 261srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_decrypt_key.c 262srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_encrypt_key.c 263srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_export.c 264srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_free.c 265srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_generate_key.c 266srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_generate_pqg.c 267srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_import.c 268srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_make_key.c 269srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_shared_secret.c 270srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_sign_hash.c 271srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_verify_hash.c 272srcs-$(_CFG_CORE_LTC_DSA) += src/pk/dsa/dsa_verify_key.c 273 274cppflags-lib-$(_CFG_CORE_LTC_RSA) += -DLTC_MRSA 275srcs-$(_CFG_CORE_LTC_RSA) += rsa.c 276srcs-$(_CFG_CORE_LTC_RSA) += src/pk/pkcs1/pkcs_1_i2osp.c 277srcs-$(_CFG_CORE_LTC_RSA) += src/pk/pkcs1/pkcs_1_mgf1.c 278srcs-$(_CFG_CORE_LTC_RSA) += src/pk/pkcs1/pkcs_1_oaep_decode.c 279srcs-$(_CFG_CORE_LTC_RSA) += src/pk/pkcs1/pkcs_1_oaep_encode.c 280srcs-$(_CFG_CORE_LTC_RSA) += src/pk/pkcs1/pkcs_1_os2ip.c 281srcs-$(_CFG_CORE_LTC_RSA) += src/pk/pkcs1/pkcs_1_pss_decode.c 282srcs-$(_CFG_CORE_LTC_RSA) += src/pk/pkcs1/pkcs_1_pss_encode.c 283srcs-$(_CFG_CORE_LTC_RSA) += src/pk/pkcs1/pkcs_1_v1_5_decode.c 284srcs-$(_CFG_CORE_LTC_RSA) += src/pk/pkcs1/pkcs_1_v1_5_encode.c 285srcs-$(_CFG_CORE_LTC_RSA) += src/pk/rsa/rsa_decrypt_key.c 286srcs-$(_CFG_CORE_LTC_RSA) += src/pk/rsa/rsa_encrypt_key.c 287srcs-$(_CFG_CORE_LTC_RSA) += src/pk/rsa/rsa_export.c 288srcs-$(_CFG_CORE_LTC_RSA) += src/pk/rsa/rsa_exptmod.c 289srcs-$(_CFG_CORE_LTC_RSA) += src/pk/rsa/rsa_import.c 290srcs-$(_CFG_CORE_LTC_RSA) += src/pk/rsa/rsa_key.c 291srcs-$(_CFG_CORE_LTC_RSA) += src/pk/rsa/rsa_make_key.c 292srcs-$(_CFG_CORE_LTC_RSA) += src/pk/rsa/rsa_sign_hash.c 293srcs-$(_CFG_CORE_LTC_RSA) += src/pk/rsa/rsa_verify_hash.c 294 295cppflags-lib-$(_CFG_CORE_LTC_DH) += -DLTC_MDH 296srcs-$(_CFG_CORE_LTC_DH) += dh.c 297srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh.c 298srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh_check_pubkey.c 299srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh_export.c 300srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh_export_key.c 301srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh_free.c 302srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh_generate_key.c 303srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh_import.c 304srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh_make_key.c 305srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh_set.c 306srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh_set_pg_dhparam.c 307srcs-$(_CFG_CORE_LTC_DH) += src/pk/dh/dh_shared_secret.c 308 309cppflags-lib-$(_CFG_CORE_LTC_ECC) += -DLTC_MECC 310# use Shamir's trick for point mul (speeds up signature verification) 311cppflags-lib-$(_CFG_CORE_LTC_ECC) += -DLTC_ECC_SHAMIR 312cppflags-lib-$(_CFG_CORE_LTC_ECC) += -DLTC_ECC192 313cppflags-lib-$(_CFG_CORE_LTC_ECC) += -DLTC_ECC224 314cppflags-lib-$(_CFG_CORE_LTC_ECC) += -DLTC_ECC256 315cppflags-lib-$(_CFG_CORE_LTC_ECC) += -DLTC_ECC384 316cppflags-lib-$(_CFG_CORE_LTC_ECC) += -DLTC_ECC521 317cppflags-lib-$(_CFG_CORE_LTC_ECC) += -DLTC_CURVE25519 318# ECC 521 bits is the max supported key size 319cppflags-lib-$(_CFG_CORE_LTC_ECC) += -DLTC_MAX_ECC=521 320srcs-$(_CFG_CORE_LTC_ECC) += ecc.c 321srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc.c 322srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc_find_curve.c 323srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc_free.c 324srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc_get_oid_str.c 325srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc_make_key.c 326srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc_set_curve.c 327srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc_set_curve_internal.c 328srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc_shared_secret.c 329srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc_sign_hash.c 330srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc_ssh_ecdsa_encode_name.c 331srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ecc_verify_hash.c 332srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ltc_ecc_is_point.c 333srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ltc_ecc_is_point_at_infinity.c 334srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ltc_ecc_map.c 335srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ltc_ecc_mulmod.c 336srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ltc_ecc_mulmod_timing.c 337srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ltc_ecc_mul2add.c 338srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ltc_ecc_points.c 339srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ltc_ecc_projective_add_point.c 340srcs-$(_CFG_CORE_LTC_ECC) += src/pk/ecc/ltc_ecc_projective_dbl_point.c 341 342ifneq (,$(filter y,$(_CFG_CORE_LTC_SM2_DSA) $(_CFG_CORE_LTC_SM2_PKE))) 343 cppflags-lib-y += -DLTC_ECC_SM2 344endif 345srcs-$(_CFG_CORE_LTC_SM2_DSA) += sm2-dsa.c 346srcs-$(_CFG_CORE_LTC_SM2_PKE) += sm2-pke.c 347srcs-$(_CFG_CORE_LTC_SM2_KEP) += sm2-kep.c 348 349cppflags-lib-$(_CFG_CORE_LTC_EC25519) += -DLTC_CURVE25519 350srcs-$(_CFG_CORE_LTC_EC25519) += src/pk/ec25519/ec25519_crypto_ctx.c 351srcs-$(_CFG_CORE_LTC_EC25519) += src/pk/ec25519/ec25519_export.c 352srcs-$(_CFG_CORE_LTC_EC25519) += src/pk/ec25519/tweetnacl.c 353 354srcs-$(_CFG_CORE_LTC_ED25519) += ed25519.c 355srcs-$(_CFG_CORE_LTC_ED25519) += src/pk/ed25519/ed25519_export.c 356srcs-$(_CFG_CORE_LTC_ED25519) += src/pk/ed25519/ed25519_import.c 357srcs-$(_CFG_CORE_LTC_ED25519) += src/pk/ed25519/ed25519_import_pkcs8.c 358srcs-$(_CFG_CORE_LTC_ED25519) += src/pk/ed25519/ed25519_import_x509.c 359srcs-$(_CFG_CORE_LTC_ED25519) += src/pk/ed25519/ed25519_make_key.c 360srcs-$(_CFG_CORE_LTC_ED25519) += src/pk/ed25519/ed25519_sign.c 361srcs-$(_CFG_CORE_LTC_ED25519) += src/pk/ed25519/ed25519_verify.c 362 363srcs-$(_CFG_CORE_LTC_X25519) += x25519.c 364cflags-x25519.c-y += -Wno-declaration-after-statement 365srcs-$(_CFG_CORE_LTC_X25519) += src/pk/x25519/x25519_export.c 366srcs-$(_CFG_CORE_LTC_X25519) += src/pk/x25519/x25519_import.c 367srcs-$(_CFG_CORE_LTC_X25519) += src/pk/x25519/x25519_make_key.c 368srcs-$(_CFG_CORE_LTC_X25519) += src/pk/x25519/x25519_shared_secret.c 369