include.am 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749
  1. # vim:ft=automake
  2. # included from Top Level Makefile.am
  3. # All paths should be given relative to the root
  4. FIPS_FILES = \
  5. ctaocrypt/src/fips.c \
  6. ctaocrypt/src/fips_test.c \
  7. wolfcrypt/src/async.c \
  8. wolfcrypt/src/fips.c \
  9. wolfcrypt/src/fips_test.c \
  10. wolfcrypt/src/selftest.c \
  11. wolfcrypt/src/wolfcrypt_first.c \
  12. wolfcrypt/src/wolfcrypt_last.c
  13. BUILT_SOURCES+= $(FIPS_FILES)
  14. MAINTAINERCLEANFILES+= $(FIPS_FILES)
  15. EXTRA_DIST += src/bio.c
  16. EXTRA_DIST += src/conf.c
  17. EXTRA_DIST += src/pk.c
  18. EXTRA_DIST += src/x509.c
  19. EXTRA_DIST += src/x509_str.c
  20. $(FIPS_FILES):
  21. $(AM_V_at)touch $(srcdir)/$@
  22. if !BUILD_NO_LIBRARY
  23. lib_LTLIBRARIES+= src/libwolfssl.la
  24. endif
  25. src_libwolfssl_la_SOURCES =
  26. src_libwolfssl_la_LDFLAGS = ${AM_LDFLAGS} -no-undefined -version-info ${WOLFSSL_LIBRARY_VERSION}
  27. src_libwolfssl_la_LIBADD = $(LIBM) $(LIB_ADD) $(LIB_STATIC_ADD)
  28. src_libwolfssl_la_CFLAGS = -DBUILDING_WOLFSSL $(AM_CFLAGS) -DLIBWOLFSSL_GLOBAL_EXTRA_CFLAGS="\" $(EXTRA_CFLAGS)\""
  29. src_libwolfssl_la_CPPFLAGS = -DBUILDING_WOLFSSL $(AM_CPPFLAGS)
  30. # install the packaged IPP libraries
  31. if BUILD_FAST_RSA
  32. # Link needed IPP libraries
  33. noinst_SCRIPTS+=IPP_links
  34. IPP_links:
  35. @$(IPPLINK)
  36. ippdir = $(libdir)
  37. ipp_DATA = $(IPPLIBS)
  38. include_HEADERS+=$(IPPHEADERS)
  39. endif # BUILD_FAST_RSA
  40. if BUILD_FIPS
  41. if BUILD_FIPS_V1
  42. # fips first file
  43. src_libwolfssl_la_SOURCES += ctaocrypt/src/wolfcrypt_first.c
  44. src_libwolfssl_la_SOURCES += \
  45. ctaocrypt/src/hmac.c \
  46. ctaocrypt/src/random.c \
  47. ctaocrypt/src/sha256.c
  48. if BUILD_RSA
  49. src_libwolfssl_la_SOURCES += ctaocrypt/src/rsa.c
  50. endif
  51. if BUILD_AES
  52. src_libwolfssl_la_SOURCES += ctaocrypt/src/aes.c
  53. endif
  54. if BUILD_DES3
  55. src_libwolfssl_la_SOURCES += ctaocrypt/src/des3.c
  56. endif
  57. if BUILD_SHA
  58. src_libwolfssl_la_SOURCES += ctaocrypt/src/sha.c
  59. endif
  60. if BUILD_SHA512
  61. src_libwolfssl_la_SOURCES += ctaocrypt/src/sha512.c
  62. endif
  63. src_libwolfssl_la_SOURCES += ctaocrypt/src/fips.c
  64. src_libwolfssl_la_SOURCES += ctaocrypt/src/fips_test.c
  65. # fips last file
  66. src_libwolfssl_la_SOURCES += ctaocrypt/src/wolfcrypt_last.c
  67. endif BUILD_FIPS_V1
  68. if BUILD_FIPS_V2
  69. # FIPSv2 first file
  70. src_libwolfssl_la_SOURCES += \
  71. wolfcrypt/src/wolfcrypt_first.c
  72. src_libwolfssl_la_SOURCES += \
  73. wolfcrypt/src/hmac.c \
  74. wolfcrypt/src/random.c \
  75. wolfcrypt/src/sha256.c
  76. if BUILD_RSA
  77. src_libwolfssl_la_SOURCES += wolfcrypt/src/rsa.c
  78. endif
  79. if BUILD_ECC
  80. src_libwolfssl_la_SOURCES += wolfcrypt/src/ecc.c
  81. endif
  82. if BUILD_WC_KYBER
  83. src_libwolfssl_la_SOURCES += wolfcrypt/src/wc_kyber.c
  84. src_libwolfssl_la_SOURCES += wolfcrypt/src/wc_kyber_poly.c
  85. if BUILD_INTELASM
  86. src_libwolfssl_la_SOURCES += wolfcrypt/src/wc_kyber_asm.S
  87. endif
  88. endif
  89. if BUILD_AES
  90. src_libwolfssl_la_SOURCES += wolfcrypt/src/aes.c
  91. endif
  92. if BUILD_AESNI
  93. src_libwolfssl_la_SOURCES += wolfcrypt/src/aes_asm.S
  94. src_libwolfssl_la_SOURCES += wolfcrypt/src/aes_gcm_asm.S
  95. endif
  96. if BUILD_DES3
  97. src_libwolfssl_la_SOURCES += wolfcrypt/src/des3.c
  98. endif
  99. if BUILD_SHA
  100. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha.c
  101. endif
  102. if BUILD_INTELASM
  103. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha256_asm.S
  104. endif
  105. if BUILD_SHA512
  106. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha512.c
  107. if BUILD_INTELASM
  108. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha512_asm.S
  109. endif
  110. endif
  111. if BUILD_SHA3
  112. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha3.c
  113. if BUILD_INTELASM
  114. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha3_asm.S
  115. endif
  116. endif
  117. if BUILD_DH
  118. src_libwolfssl_la_SOURCES += wolfcrypt/src/dh.c
  119. endif
  120. if BUILD_CMAC
  121. src_libwolfssl_la_SOURCES += wolfcrypt/src/cmac.c
  122. endif
  123. src_libwolfssl_la_SOURCES += wolfcrypt/src/fips.c \
  124. wolfcrypt/src/fips_test.c
  125. # fips last file
  126. src_libwolfssl_la_SOURCES += wolfcrypt/src/wolfcrypt_last.c
  127. endif BUILD_FIPS_V2
  128. if BUILD_FIPS_RAND
  129. src_libwolfssl_la_SOURCES += \
  130. wolfcrypt/src/wolfcrypt_first.c \
  131. wolfcrypt/src/hmac.c \
  132. wolfcrypt/src/random.c \
  133. wolfcrypt/src/sha256.c \
  134. wolfcrypt/src/sha256_asm.S \
  135. wolfcrypt/src/fips.c \
  136. wolfcrypt/src/fips_test.c \
  137. wolfcrypt/src/wolfcrypt_last.c
  138. endif BUILD_FIPS_RAND
  139. if BUILD_FIPS_V5
  140. # FIPS 140-3 first file
  141. src_libwolfssl_la_SOURCES += \
  142. wolfcrypt/src/wolfcrypt_first.c
  143. src_libwolfssl_la_SOURCES += \
  144. wolfcrypt/src/hmac.c \
  145. wolfcrypt/src/random.c
  146. src_libwolfssl_la_SOURCES += wolfcrypt/src/kdf.c
  147. if BUILD_RSA
  148. src_libwolfssl_la_SOURCES += wolfcrypt/src/rsa.c
  149. endif
  150. if BUILD_ECC
  151. src_libwolfssl_la_SOURCES += wolfcrypt/src/ecc.c
  152. endif
  153. if BUILD_WC_KYBER
  154. src_libwolfssl_la_SOURCES += wolfcrypt/src/wc_kyber.c
  155. src_libwolfssl_la_SOURCES += wolfcrypt/src/wc_kyber_poly.c
  156. if BUILD_INTELASM
  157. src_libwolfssl_la_SOURCES += wolfcrypt/src/wc_kyber_asm.S
  158. endif
  159. endif
  160. if BUILD_AES
  161. src_libwolfssl_la_SOURCES += wolfcrypt/src/aes.c
  162. if BUILD_ARMASM
  163. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-aes.c
  164. endif
  165. endif
  166. if BUILD_AESNI
  167. src_libwolfssl_la_SOURCES += wolfcrypt/src/aes_asm.S
  168. src_libwolfssl_la_SOURCES += wolfcrypt/src/aes_gcm_asm.S
  169. endif
  170. if BUILD_SHA
  171. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha.c
  172. endif
  173. if BUILD_ARMASM
  174. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha256.c
  175. else
  176. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha256.c
  177. if BUILD_INTELASM
  178. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha256_asm.S
  179. endif
  180. endif
  181. if BUILD_SHA512
  182. if BUILD_ARMASM
  183. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha512.c
  184. if BUILD_ARMASM_INLINE
  185. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha512-asm_c.c
  186. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-32-sha512-asm_c.c
  187. else
  188. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha512-asm.S
  189. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-32-sha512-asm.S
  190. endif
  191. else
  192. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha512.c
  193. if BUILD_INTELASM
  194. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha512_asm.S
  195. endif
  196. endif
  197. endif
  198. if BUILD_SHA3
  199. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha3.c
  200. if BUILD_ARMASM
  201. if BUILD_ARMASM_INLINE
  202. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha3-asm_c.c
  203. else
  204. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha3-asm.S
  205. endif
  206. endif
  207. if BUILD_INTELASM
  208. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha3_asm.S
  209. endif
  210. endif
  211. if BUILD_DH
  212. src_libwolfssl_la_SOURCES += wolfcrypt/src/dh.c
  213. endif
  214. if BUILD_CMAC
  215. src_libwolfssl_la_SOURCES += wolfcrypt/src/cmac.c
  216. endif
  217. src_libwolfssl_la_SOURCES += wolfcrypt/src/fips.c \
  218. wolfcrypt/src/fips_test.c
  219. # fips last file
  220. src_libwolfssl_la_SOURCES += wolfcrypt/src/wolfcrypt_last.c
  221. endif BUILD_FIPS_V5
  222. endif BUILD_FIPS
  223. # For wolfRand, exclude everything else.
  224. if !BUILD_FIPS_RAND
  225. # For FIPSV2, exclude the wolfCrypt files included above.
  226. # For wolfRand, exclude just a couple files.
  227. # For old FIPS, keep the wolfCrypt versions of the
  228. # CtaoCrypt files included above.
  229. if !BUILD_FIPS_CURRENT
  230. if BUILD_HMAC
  231. src_libwolfssl_la_SOURCES += wolfcrypt/src/hmac.c
  232. endif
  233. endif !BUILD_FIPS_CURRENT
  234. # CAVP self test
  235. if BUILD_SELFTEST
  236. src_libwolfssl_la_SOURCES += wolfcrypt/src/selftest.c
  237. endif
  238. endif !BUILD_FIPS_RAND
  239. src_libwolfssl_la_SOURCES += wolfcrypt/src/hash.c
  240. if !BUILD_DO178
  241. src_libwolfssl_la_SOURCES += wolfcrypt/src/cpuid.c
  242. endif !BUILD_DO178
  243. if !BUILD_FIPS_RAND
  244. if !BUILD_FIPS_V5
  245. if BUILD_KDF
  246. src_libwolfssl_la_SOURCES += wolfcrypt/src/kdf.c
  247. endif
  248. endif !BUILD_FIPS_V5
  249. if !BUILD_FIPS_CURRENT
  250. if BUILD_RNG
  251. src_libwolfssl_la_SOURCES += wolfcrypt/src/random.c
  252. endif
  253. endif !BUILD_FIPS_CURRENT
  254. if !BUILD_FIPS_CURRENT
  255. if BUILD_ARMASM
  256. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha256.c
  257. else
  258. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha256.c
  259. if BUILD_INTELASM
  260. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha256_asm.S
  261. endif
  262. endif
  263. endif !BUILD_FIPS_CURRENT
  264. if BUILD_AFALG
  265. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/af_alg/afalg_hash.c
  266. endif
  267. if BUILD_KCAPI
  268. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/kcapi/kcapi_aes.c
  269. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/kcapi/kcapi_hash.c
  270. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/kcapi/kcapi_hmac.c
  271. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/kcapi/kcapi_ecc.c
  272. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/kcapi/kcapi_rsa.c
  273. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/kcapi/kcapi_dh.c
  274. endif
  275. if BUILD_WOLFEVENT
  276. src_libwolfssl_la_SOURCES += wolfcrypt/src/wolfevent.c
  277. endif
  278. if BUILD_ASYNCCRYPT
  279. src_libwolfssl_la_SOURCES += wolfcrypt/src/async.c
  280. endif
  281. if !BUILD_USER_RSA
  282. if BUILD_RSA
  283. if BUILD_FAST_RSA
  284. src_libwolfssl_la_SOURCES += wolfcrypt/user-crypto/src/rsa.c
  285. else
  286. if !BUILD_FIPS_CURRENT
  287. src_libwolfssl_la_SOURCES += wolfcrypt/src/rsa.c
  288. endif !BUILD_FIPS_CURRENT
  289. endif
  290. endif
  291. endif
  292. if BUILD_RC2
  293. src_libwolfssl_la_SOURCES += wolfcrypt/src/rc2.c
  294. endif
  295. if BUILD_SP
  296. if BUILD_SP_C32
  297. src_libwolfssl_la_SOURCES += wolfcrypt/src/sp_c32.c
  298. endif
  299. if BUILD_SP_C64
  300. src_libwolfssl_la_SOURCES += wolfcrypt/src/sp_c64.c
  301. endif
  302. if BUILD_SP_X86_64
  303. src_libwolfssl_la_SOURCES += wolfcrypt/src/sp_x86_64.c
  304. src_libwolfssl_la_SOURCES += wolfcrypt/src/sp_x86_64_asm.S
  305. endif
  306. if !BUILD_FIPS_V2
  307. if BUILD_SP_ARM32
  308. src_libwolfssl_la_SOURCES += wolfcrypt/src/sp_arm32.c
  309. endif
  310. endif
  311. if BUILD_SP_ARM_THUMB
  312. src_libwolfssl_la_SOURCES += wolfcrypt/src/sp_armthumb.c
  313. endif
  314. if !BUILD_FIPS_V2
  315. if BUILD_SP_ARM64
  316. src_libwolfssl_la_SOURCES += wolfcrypt/src/sp_arm64.c
  317. endif
  318. endif
  319. if BUILD_SP_ARM_CORTEX
  320. src_libwolfssl_la_SOURCES += wolfcrypt/src/sp_cortexm.c
  321. endif
  322. endif BUILD_SP
  323. if BUILD_SP_INT
  324. src_libwolfssl_la_SOURCES += wolfcrypt/src/sp_int.c
  325. endif
  326. if !BUILD_FIPS_CURRENT
  327. if BUILD_AES
  328. src_libwolfssl_la_SOURCES += wolfcrypt/src/aes.c
  329. if BUILD_ARMASM
  330. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-aes.c
  331. endif
  332. if BUILD_AFALG
  333. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/af_alg/afalg_aes.c
  334. endif
  335. endif
  336. endif !BUILD_FIPS_CURRENT
  337. if !BUILD_FIPS_CURRENT
  338. if BUILD_CMAC
  339. src_libwolfssl_la_SOURCES += wolfcrypt/src/cmac.c
  340. endif
  341. endif !BUILD_FIPS_CURRENT
  342. if !BUILD_FIPS_V2
  343. if BUILD_DES3
  344. src_libwolfssl_la_SOURCES += wolfcrypt/src/des3.c
  345. endif BUILD_DES3
  346. endif !BUILD_FIPS_V2
  347. if !BUILD_FIPS_CURRENT
  348. if BUILD_SHA
  349. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha.c
  350. endif
  351. endif !BUILD_FIPS_CURRENT
  352. if !BUILD_FIPS_CURRENT
  353. if BUILD_SHA512
  354. if BUILD_ARMASM
  355. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha512.c
  356. if BUILD_ARMASM_INLINE
  357. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha512-asm_c.c
  358. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-32-sha512-asm_c.c
  359. else
  360. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha512-asm.S
  361. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-32-sha512-asm.S
  362. endif
  363. else
  364. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha512.c
  365. if BUILD_INTELASM
  366. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha512_asm.S
  367. endif
  368. endif
  369. endif
  370. endif !BUILD_FIPS_CURRENT
  371. if !BUILD_FIPS_CURRENT
  372. if BUILD_SHA3
  373. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha3.c
  374. if BUILD_ARMASM
  375. if BUILD_ARMASM_INLINE
  376. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha3-asm_c.c
  377. else
  378. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-sha3-asm.S
  379. endif
  380. endif
  381. if BUILD_INTELASM
  382. src_libwolfssl_la_SOURCES += wolfcrypt/src/sha3_asm.S
  383. endif
  384. endif
  385. endif !BUILD_FIPS_CURRENT
  386. endif !BUILD_FIPS_RAND
  387. if BUILD_SIPHASH
  388. src_libwolfssl_la_SOURCES += wolfcrypt/src/siphash.c
  389. endif
  390. src_libwolfssl_la_SOURCES += \
  391. wolfcrypt/src/logging.c \
  392. wolfcrypt/src/wc_port.c
  393. if BUILD_ERROR_STRINGS
  394. src_libwolfssl_la_SOURCES += wolfcrypt/src/error.c
  395. endif
  396. if !BUILD_FIPS_RAND
  397. if !BUILD_DO178
  398. src_libwolfssl_la_SOURCES += \
  399. wolfcrypt/src/wc_encrypt.c \
  400. wolfcrypt/src/signature.c
  401. endif !BUILD_DO178
  402. src_libwolfssl_la_SOURCES += wolfcrypt/src/wolfmath.c
  403. endif !BUILD_FIPS_RAND
  404. if BUILD_MEMORY
  405. src_libwolfssl_la_SOURCES += wolfcrypt/src/memory.c
  406. endif
  407. if !BUILD_FIPS_RAND
  408. if !BUILD_FIPS_CURRENT
  409. if BUILD_DH
  410. src_libwolfssl_la_SOURCES += wolfcrypt/src/dh.c
  411. endif
  412. endif
  413. if BUILD_ASN
  414. src_libwolfssl_la_SOURCES += wolfcrypt/src/asn.c
  415. endif
  416. endif !BUILD_FIPS_RAND
  417. if BUILD_CODING
  418. src_libwolfssl_la_SOURCES += wolfcrypt/src/coding.c
  419. endif
  420. if !BUILD_FIPS_RAND
  421. if BUILD_POLY1305
  422. if BUILD_ARMASM
  423. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-poly1305.c
  424. endif
  425. src_libwolfssl_la_SOURCES += wolfcrypt/src/poly1305.c
  426. if BUILD_INTELASM
  427. src_libwolfssl_la_SOURCES += wolfcrypt/src/poly1305_asm.S
  428. endif
  429. endif
  430. if BUILD_RC4
  431. src_libwolfssl_la_SOURCES += wolfcrypt/src/arc4.c
  432. endif
  433. if BUILD_MD4
  434. src_libwolfssl_la_SOURCES += wolfcrypt/src/md4.c
  435. endif
  436. if BUILD_MD5
  437. src_libwolfssl_la_SOURCES += wolfcrypt/src/md5.c
  438. endif
  439. if BUILD_PWDBASED
  440. src_libwolfssl_la_SOURCES += wolfcrypt/src/pwdbased.c
  441. src_libwolfssl_la_SOURCES += wolfcrypt/src/pkcs12.c
  442. endif
  443. if BUILD_DSA
  444. src_libwolfssl_la_SOURCES += wolfcrypt/src/dsa.c
  445. endif
  446. if !BUILD_FIPS_CURRENT
  447. if BUILD_AESNI
  448. src_libwolfssl_la_SOURCES += wolfcrypt/src/aes_asm.S
  449. src_libwolfssl_la_SOURCES += wolfcrypt/src/aes_gcm_asm.S
  450. endif
  451. endif
  452. if BUILD_CAMELLIA
  453. src_libwolfssl_la_SOURCES += wolfcrypt/src/camellia.c
  454. endif
  455. if BUILD_MD2
  456. src_libwolfssl_la_SOURCES += wolfcrypt/src/md2.c
  457. endif
  458. if BUILD_RIPEMD
  459. src_libwolfssl_la_SOURCES += wolfcrypt/src/ripemd.c
  460. endif
  461. if BUILD_BLAKE2
  462. src_libwolfssl_la_SOURCES += wolfcrypt/src/blake2b.c
  463. endif
  464. if BUILD_BLAKE2S
  465. src_libwolfssl_la_SOURCES += wolfcrypt/src/blake2s.c
  466. endif
  467. if BUILD_CHACHA
  468. if BUILD_ARMASM
  469. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-chacha.c
  470. else
  471. src_libwolfssl_la_SOURCES += wolfcrypt/src/chacha.c
  472. if BUILD_INTELASM
  473. src_libwolfssl_la_SOURCES += wolfcrypt/src/chacha_asm.S
  474. endif
  475. endif
  476. if BUILD_POLY1305
  477. src_libwolfssl_la_SOURCES += wolfcrypt/src/chacha20_poly1305.c
  478. endif
  479. endif
  480. if !BUILD_INLINE
  481. src_libwolfssl_la_SOURCES += wolfcrypt/src/misc.c
  482. endif
  483. if BUILD_FASTMATH
  484. src_libwolfssl_la_SOURCES += wolfcrypt/src/tfm.c
  485. endif
  486. if BUILD_HEAPMATH
  487. src_libwolfssl_la_SOURCES += wolfcrypt/src/integer.c
  488. endif
  489. if !BUILD_FIPS_CURRENT
  490. if BUILD_ECC
  491. src_libwolfssl_la_SOURCES += wolfcrypt/src/ecc.c
  492. endif
  493. if BUILD_ECCSI
  494. src_libwolfssl_la_SOURCES += wolfcrypt/src/eccsi.c
  495. endif
  496. if BUILD_SAKKE
  497. src_libwolfssl_la_SOURCES += wolfcrypt/src/sakke.c
  498. endif
  499. endif
  500. if BUILD_WC_KYBER
  501. src_libwolfssl_la_SOURCES += wolfcrypt/src/wc_kyber.c
  502. src_libwolfssl_la_SOURCES += wolfcrypt/src/wc_kyber_poly.c
  503. if BUILD_INTELASM
  504. src_libwolfssl_la_SOURCES += wolfcrypt/src/wc_kyber_asm.S
  505. endif
  506. endif
  507. if BUILD_CURVE25519
  508. src_libwolfssl_la_SOURCES += wolfcrypt/src/curve25519.c
  509. endif
  510. if BUILD_ED25519
  511. src_libwolfssl_la_SOURCES += wolfcrypt/src/ed25519.c
  512. endif
  513. if BUILD_FEMATH
  514. if BUILD_CURVE25519_SMALL
  515. src_libwolfssl_la_SOURCES += wolfcrypt/src/fe_low_mem.c
  516. else
  517. if BUILD_INTELASM
  518. src_libwolfssl_la_SOURCES += wolfcrypt/src/fe_x25519_asm.S
  519. else
  520. if BUILD_ARMASM
  521. if BUILD_ARMASM_INLINE
  522. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-32-curve25519_c.c
  523. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-curve25519_c.c
  524. else
  525. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-32-curve25519.S
  526. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-curve25519.S
  527. endif
  528. else
  529. src_libwolfssl_la_SOURCES += wolfcrypt/src/fe_operations.c
  530. endif
  531. endif
  532. endif
  533. endif
  534. if BUILD_GEMATH
  535. if BUILD_ED25519_SMALL
  536. src_libwolfssl_la_SOURCES += wolfcrypt/src/ge_low_mem.c
  537. else
  538. src_libwolfssl_la_SOURCES += wolfcrypt/src/ge_operations.c
  539. if !BUILD_FEMATH
  540. if BUILD_INTELASM
  541. src_libwolfssl_la_SOURCES += wolfcrypt/src/fe_x25519_asm.S
  542. else
  543. if BUILD_ARMASM
  544. if BUILD_ARMASM_INLINE
  545. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-curve25519_c.c
  546. else
  547. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/arm/armv8-curve25519.S
  548. endif
  549. else
  550. src_libwolfssl_la_SOURCES += wolfcrypt/src/fe_operations.c
  551. endif
  552. endif
  553. endif
  554. endif
  555. endif
  556. if BUILD_CURVE448
  557. src_libwolfssl_la_SOURCES += wolfcrypt/src/curve448.c
  558. endif
  559. if BUILD_ED448
  560. src_libwolfssl_la_SOURCES += wolfcrypt/src/ed448.c
  561. endif
  562. if BUILD_FE448
  563. src_libwolfssl_la_SOURCES += wolfcrypt/src/fe_448.c
  564. endif
  565. if BUILD_GE448
  566. src_libwolfssl_la_SOURCES += wolfcrypt/src/ge_448.c
  567. if !BUILD_FE448
  568. src_libwolfssl_la_SOURCES += wolfcrypt/src/fe_448.c
  569. endif
  570. endif
  571. if BUILD_LIBOQS
  572. src_libwolfssl_la_SOURCES += wolfcrypt/src/falcon.c
  573. src_libwolfssl_la_SOURCES += wolfcrypt/src/dilithium.c
  574. src_libwolfssl_la_SOURCES += wolfcrypt/src/sphincs.c
  575. src_libwolfssl_la_SOURCES += wolfcrypt/src/ext_kyber.c
  576. endif
  577. if BUILD_LIBZ
  578. src_libwolfssl_la_SOURCES += wolfcrypt/src/compress.c
  579. endif
  580. if BUILD_PKCS7
  581. src_libwolfssl_la_SOURCES += wolfcrypt/src/pkcs7.c
  582. endif
  583. if BUILD_SRP
  584. src_libwolfssl_la_SOURCES += wolfcrypt/src/srp.c
  585. endif
  586. if BUILD_AFALG
  587. src_libwolfssl_la_SOURCES += wolfcrypt/src/port/af_alg/wc_afalg.c
  588. endif
  589. if !BUILD_CRYPTONLY
  590. # ssl files
  591. src_libwolfssl_la_SOURCES += \
  592. src/internal.c \
  593. src/wolfio.c \
  594. src/keys.c \
  595. src/ssl.c \
  596. src/tls.c
  597. if BUILD_TLS13
  598. src_libwolfssl_la_SOURCES += src/tls13.c
  599. endif
  600. if BUILD_OCSP
  601. src_libwolfssl_la_SOURCES += src/ocsp.c
  602. endif
  603. if BUILD_CRL
  604. src_libwolfssl_la_SOURCES += src/crl.c
  605. endif
  606. if BUILD_SNIFFER
  607. src_libwolfssl_la_SOURCES += src/sniffer.c
  608. endif
  609. if BUILD_DTLS13
  610. src_libwolfssl_la_SOURCES += src/dtls13.c
  611. endif
  612. if BUILD_QUIC
  613. src_libwolfssl_la_SOURCES += src/quic.c
  614. endif
  615. if BUILD_DTLS_CID
  616. src_libwolfssl_la_SOURCES += src/dtls.c
  617. endif
  618. endif !BUILD_CRYPTONLY
  619. endif !BUILD_FIPS_RAND