summaryrefslogtreecommitdiff
path: root/core/lib/libtomcrypt/sub.mk
blob: a6e184f59df0bcb9f80616921a02abb33a28c858 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
global-incdirs-y += include
global-incdirs-y += src/headers

cppflags-lib-y += -DARGTYPE=4  # Make LTC_ARGCHK() return on error
cppflags-lib-y += -DLTC_CLEAN_STACK -DLTC_NO_TEST -DLTC_NO_PROTOTYPES
cppflags-lib-y += -DLTC_NO_TABLES -DLTC_HASH_HELPERS
cppflags-lib-$(_CFG_CORE_LTC_SIZE_OPTIMIZATION) += -DLTC_SMALL_CODE

cppflags-lib-y += -DLTC_NO_CIPHERS

ifeq ($(_CFG_CORE_LTC_AES_DESC),y)
	cppflags-lib-y += -DLTC_RIJNDAEL
endif
ifeq ($(_CFG_CORE_LTC_DES),y)
	cppflags-lib-y += -DLTC_DES
endif

cppflags-lib-y += -DLTC_NO_MODES

ifeq ($(_CFG_CORE_LTC_ECB),y)
	cppflags-lib-y += -DLTC_ECB_MODE
endif
ifeq ($(_CFG_CORE_LTC_CBC),y)
	cppflags-lib-y += -DLTC_CBC_MODE
endif
ifeq ($(_CFG_CORE_LTC_CTR),y)
	cppflags-lib-y += -DLTC_CTR_MODE
endif
ifeq ($(_CFG_CORE_LTC_XTS),y)
	cppflags-lib-y += -DLTC_XTS_MODE
endif

cppflags-lib-y += -DLTC_NO_HASHES

ifeq ($(_CFG_CORE_LTC_MD5),y)
	cppflags-lib-y += -DLTC_MD5
endif
ifeq ($(_CFG_CORE_LTC_SHA1),y)
	cppflags-lib-y += -DLTC_SHA1
endif
ifeq ($(_CFG_CORE_LTC_SHA224),y)
	cppflags-lib-y += -DLTC_SHA224
endif
ifeq ($(_CFG_CORE_LTC_SHA256_DESC),y)
	cppflags-lib-y += -DLTC_SHA256
endif
ifeq ($(_CFG_CORE_LTC_SHA256_ARM32_CE),y)
	cppflags-lib-y += -DLTC_SHA256_ARM32_CE
endif
ifeq ($(_CFG_CORE_LTC_SHA256_ARM64_CE),y)
	cppflags-lib-y += -DLTC_SHA256_ARM64_CE
endif
ifeq ($(_CFG_CORE_LTC_SHA384_DESC),y)
	cppflags-lib-y += -DLTC_SHA384
endif
ifeq ($(_CFG_CORE_LTC_SHA512_DESC),y)
	cppflags-lib-y += -DLTC_SHA512
endif
ifeq ($(_CFG_CORE_LTC_SHA512_256),y)
	cppflags-lib-y += -DLTC_SHA512_256
endif

cppflags-lib-y += -DLTC_NO_MACS

ifeq ($(_CFG_CORE_LTC_HMAC),y)
	cppflags-lib-y += -DLTC_HMAC
endif
ifeq ($(_CFG_CORE_LTC_CMAC),y)
	cppflags-lib-y += -DLTC_OMAC
endif
ifeq ($(_CFG_CORE_LTC_CCM),y)
	cppflags-lib-y += -DLTC_CCM_MODE
endif
ifeq ($(_CFG_CORE_LTC_GCM),y)
	cppflags-lib-y += -DLTC_GCM_MODE
endif

cppflags-lib-y += -DLTC_NO_PK

ifeq ($(_CFG_CORE_LTC_RSA),y)
   cppflags-lib-y += -DLTC_MRSA
endif
ifeq ($(_CFG_CORE_LTC_DSA),y)
   cppflags-lib-y += -DLTC_MDSA
endif
ifeq ($(_CFG_CORE_LTC_DH),y)
   cppflags-lib-y += -DLTC_MDH
endif
ifeq ($(_CFG_CORE_LTC_ECC),y)
   cppflags-lib-y += -DLTC_MECC

   # use Shamir's trick for point mul (speeds up signature verification)
   cppflags-lib-y += -DLTC_ECC_SHAMIR

   cppflags-lib-y += -DLTC_ECC192
   cppflags-lib-y += -DLTC_ECC224
   cppflags-lib-y += -DLTC_ECC256
   cppflags-lib-y += -DLTC_ECC384
   cppflags-lib-y += -DLTC_ECC521

   # ECC 521 bits is the max supported key size
   cppflags-lib-y += -DLTC_MAX_ECC=521
endif
ifneq (,$(filter y,$(_CFG_CORE_LTC_SM2_DSA) $(_CFG_CORE_LTC_SM2_PKE)))
   cppflags-lib-y += -DLTC_ECC_SM2
endif

cppflags-lib-y += -DLTC_NO_PKCS

ifneq (,$(filter y,$(_CFG_CORE_LTC_RSA) $(_CFG_CORE_LTC_DSA) $(_CFG_CORE_LTC_ECC) $(_CFG_CORE_LTC_HASH)))
   cppflags-lib-y += -DLTC_DER
endif

cppflags-lib-y += -DLTC_NO_PRNGS -DLTC_FORTUNA

cflags-lib-$(_CFG_CORE_LTC_SIZE_OPTIMIZATION) += -Os

subdirs-y += src

srcs-$(_CFG_CORE_LTC_HASH) += hash.c
srcs-$(_CFG_CORE_LTC_HMAC) += hmac.c
srcs-$(_CFG_CORE_LTC_CMAC) += cmac.c
srcs-$(_CFG_CORE_LTC_ECB) += ecb.c
srcs-$(_CFG_CORE_LTC_CBC) += cbc.c
srcs-$(_CFG_CORE_LTC_CTR) += ctr.c
srcs-$(_CFG_CORE_LTC_XTS) += xts.c
srcs-$(_CFG_CORE_LTC_CCM) += ccm.c
srcs-$(_CFG_CORE_LTC_GCM) += gcm.c
srcs-$(_CFG_CORE_LTC_DSA) += dsa.c
srcs-$(_CFG_CORE_LTC_ECC) += ecc.c
srcs-$(_CFG_CORE_LTC_RSA) += rsa.c
srcs-$(_CFG_CORE_LTC_DH) += dh.c
srcs-$(_CFG_CORE_LTC_AES) += aes.c
srcs-$(_CFG_CORE_LTC_SM2_DSA) += sm2-dsa.c
srcs-$(_CFG_CORE_LTC_SM2_PKE) += sm2-pke.c
srcs-$(_CFG_CORE_LTC_SM2_KEP) += sm2-kep.c
srcs-$(if $(filter y,$(_CFG_CORE_LTC_SM2_PKE) $(_CFG_CORE_LTC_SM2_KEP),y),y) += sm2_kdf.c

ifeq ($(_CFG_CORE_LTC_ACIPHER),y)
srcs-y += mpi_desc.c
endif

srcs-y += tomcrypt.c