ya.make 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269
  1. # Generated by devtools/yamaker from nixpkgs 22.11.
  2. LIBRARY()
  3. LICENSE(
  4. Apache-2.0 AND
  5. Brian-Gladman-3-Clause AND
  6. CC0-1.0 AND
  7. MIT AND
  8. Public-Domain
  9. )
  10. LICENSE_TEXTS(.yandex_meta/licenses.list.txt)
  11. VERSION(1.3.56)
  12. ORIGINAL_SOURCE(https://github.com/aws/s2n-tls/archive/v1.3.56.tar.gz)
  13. PEERDIR(
  14. contrib/libs/openssl
  15. )
  16. ADDINCL(
  17. GLOBAL contrib/restricted/aws/s2n
  18. GLOBAL contrib/restricted/aws/s2n/api
  19. )
  20. NO_COMPILER_WARNINGS()
  21. NO_RUNTIME()
  22. CFLAGS(
  23. -DS2N_ATOMIC_SUPPORTED
  24. -DS2N_CLOEXEC_SUPPORTED
  25. -DS2N_CLOEXEC_XOPEN_SUPPORTED
  26. -DS2N_CLONE_SUPPORTED
  27. -DS2N_DIAGNOSTICS_POP_SUPPORTED
  28. -DS2N_DIAGNOSTICS_PUSH_SUPPORTED
  29. -DS2N_EXECINFO_AVAILABLE
  30. -DS2N_FALL_THROUGH_SUPPORTED
  31. -DS2N_KYBER512R3_AVX2_BMI2_SUPPORTED
  32. -DS2N_KYBER512R3_M256_INTRINSICS_SUPPORTED
  33. -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD5_SHA1_HASH
  34. -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD_CTX_SET_PKEY_CTX
  35. -DS2N_LIBCRYPTO_SUPPORTS_EVP_RC4
  36. -DS2N_LIBCRYPTO_SUPPORTS_FLAG_NO_CHECK_TIME
  37. -DS2N_MADVISE_SUPPORTED
  38. -DS2N___RESTRICT__SUPPORTED
  39. )
  40. IF (OS_LINUX)
  41. CFLAGS(
  42. -DS2N_FEATURES_AVAILABLE
  43. -DS2N_LINUX_SENDFILE
  44. -DS2N_KTLS_SUPPORTED
  45. )
  46. ENDIF()
  47. IF (NOT MUSL)
  48. CFLAGS(
  49. -DS2N_STACKTRACE
  50. )
  51. ENDIF()
  52. IF (ARCH_X86_64)
  53. CFLAGS(
  54. -DS2N_CPUID_AVAILABLE
  55. -DS2N_KYBER512R3_AVX2_BMI2
  56. )
  57. SRCS(
  58. pq-crypto/kyber_r3/kyber512r3_basemul_avx2.S
  59. pq-crypto/kyber_r3/kyber512r3_fq_avx2.S
  60. pq-crypto/kyber_r3/kyber512r3_invntt_avx2.S
  61. pq-crypto/kyber_r3/kyber512r3_ntt_avx2.S
  62. pq-crypto/kyber_r3/kyber512r3_shuffle_avx2.S
  63. )
  64. SRC_C_AVX2(pq-crypto/kyber_r3/KeccakP-1600-times4-SIMD256_avx2.c)
  65. SRC_C_AVX2(pq-crypto/kyber_r3/kyber512r3_cbd_avx2.c)
  66. SRC_C_AVX2(pq-crypto/kyber_r3/kyber512r3_consts_avx2.c)
  67. SRC_C_AVX2(pq-crypto/kyber_r3/kyber512r3_fips202x4_avx2.c)
  68. SRC_C_AVX2(pq-crypto/kyber_r3/kyber512r3_indcpa_avx2.c)
  69. SRC_C_AVX2(pq-crypto/kyber_r3/kyber512r3_poly_avx2.c)
  70. SRC_C_AVX2(pq-crypto/kyber_r3/kyber512r3_polyvec_avx2.c)
  71. SRC_C_AVX2(pq-crypto/kyber_r3/kyber512r3_rejsample_avx2.c)
  72. ENDIF()
  73. SRCS(
  74. crypto/s2n_aead_cipher_aes_gcm.c
  75. crypto/s2n_aead_cipher_chacha20_poly1305.c
  76. crypto/s2n_cbc_cipher_3des.c
  77. crypto/s2n_cbc_cipher_aes.c
  78. crypto/s2n_certificate.c
  79. crypto/s2n_cipher.c
  80. crypto/s2n_composite_cipher_aes_sha.c
  81. crypto/s2n_crypto.c
  82. crypto/s2n_dhe.c
  83. crypto/s2n_drbg.c
  84. crypto/s2n_ecc_evp.c
  85. crypto/s2n_ecdsa.c
  86. crypto/s2n_evp.c
  87. crypto/s2n_evp_signing.c
  88. crypto/s2n_fips.c
  89. crypto/s2n_hash.c
  90. crypto/s2n_hkdf.c
  91. crypto/s2n_hmac.c
  92. crypto/s2n_libcrypto.c
  93. crypto/s2n_locking.c
  94. crypto/s2n_openssl_x509.c
  95. crypto/s2n_pkey.c
  96. crypto/s2n_rsa.c
  97. crypto/s2n_rsa_pss.c
  98. crypto/s2n_rsa_signing.c
  99. crypto/s2n_sequence.c
  100. crypto/s2n_stream_cipher_null.c
  101. crypto/s2n_stream_cipher_rc4.c
  102. crypto/s2n_tls13_keys.c
  103. error/s2n_errno.c
  104. pq-crypto/kyber_r3/kyber512r3_cbd.c
  105. pq-crypto/kyber_r3/kyber512r3_fips202.c
  106. pq-crypto/kyber_r3/kyber512r3_indcpa.c
  107. pq-crypto/kyber_r3/kyber512r3_kem.c
  108. pq-crypto/kyber_r3/kyber512r3_ntt.c
  109. pq-crypto/kyber_r3/kyber512r3_poly.c
  110. pq-crypto/kyber_r3/kyber512r3_polyvec.c
  111. pq-crypto/kyber_r3/kyber512r3_reduce.c
  112. pq-crypto/kyber_r3/kyber512r3_symmetric-shake.c
  113. pq-crypto/s2n_kyber_evp.c
  114. pq-crypto/s2n_pq.c
  115. pq-crypto/s2n_pq_random.c
  116. stuffer/s2n_stuffer.c
  117. stuffer/s2n_stuffer_base64.c
  118. stuffer/s2n_stuffer_file.c
  119. stuffer/s2n_stuffer_network_order.c
  120. stuffer/s2n_stuffer_pem.c
  121. stuffer/s2n_stuffer_text.c
  122. tls/extensions/s2n_cert_status.c
  123. tls/extensions/s2n_cert_status_response.c
  124. tls/extensions/s2n_client_alpn.c
  125. tls/extensions/s2n_client_cert_status_request.c
  126. tls/extensions/s2n_client_cookie.c
  127. tls/extensions/s2n_client_early_data_indication.c
  128. tls/extensions/s2n_client_ems.c
  129. tls/extensions/s2n_client_key_share.c
  130. tls/extensions/s2n_client_max_frag_len.c
  131. tls/extensions/s2n_client_pq_kem.c
  132. tls/extensions/s2n_client_psk.c
  133. tls/extensions/s2n_client_renegotiation_info.c
  134. tls/extensions/s2n_client_sct_list.c
  135. tls/extensions/s2n_client_server_name.c
  136. tls/extensions/s2n_client_session_ticket.c
  137. tls/extensions/s2n_client_signature_algorithms.c
  138. tls/extensions/s2n_client_supported_groups.c
  139. tls/extensions/s2n_client_supported_versions.c
  140. tls/extensions/s2n_ec_point_format.c
  141. tls/extensions/s2n_extension_list.c
  142. tls/extensions/s2n_extension_type.c
  143. tls/extensions/s2n_extension_type_lists.c
  144. tls/extensions/s2n_key_share.c
  145. tls/extensions/s2n_npn.c
  146. tls/extensions/s2n_nst_early_data_indication.c
  147. tls/extensions/s2n_psk_key_exchange_modes.c
  148. tls/extensions/s2n_quic_transport_params.c
  149. tls/extensions/s2n_server_alpn.c
  150. tls/extensions/s2n_server_cert_status_request.c
  151. tls/extensions/s2n_server_cookie.c
  152. tls/extensions/s2n_server_early_data_indication.c
  153. tls/extensions/s2n_server_ems.c
  154. tls/extensions/s2n_server_key_share.c
  155. tls/extensions/s2n_server_max_fragment_length.c
  156. tls/extensions/s2n_server_psk.c
  157. tls/extensions/s2n_server_renegotiation_info.c
  158. tls/extensions/s2n_server_sct_list.c
  159. tls/extensions/s2n_server_server_name.c
  160. tls/extensions/s2n_server_session_ticket.c
  161. tls/extensions/s2n_server_signature_algorithms.c
  162. tls/extensions/s2n_server_supported_versions.c
  163. tls/extensions/s2n_supported_versions.c
  164. tls/s2n_aead.c
  165. tls/s2n_alerts.c
  166. tls/s2n_async_pkey.c
  167. tls/s2n_auth_selection.c
  168. tls/s2n_cbc.c
  169. tls/s2n_change_cipher_spec.c
  170. tls/s2n_cipher_preferences.c
  171. tls/s2n_cipher_suites.c
  172. tls/s2n_client_cert.c
  173. tls/s2n_client_cert_verify.c
  174. tls/s2n_client_finished.c
  175. tls/s2n_client_hello.c
  176. tls/s2n_client_hello_request.c
  177. tls/s2n_client_key_exchange.c
  178. tls/s2n_config.c
  179. tls/s2n_connection.c
  180. tls/s2n_crl.c
  181. tls/s2n_crypto.c
  182. tls/s2n_early_data.c
  183. tls/s2n_early_data_io.c
  184. tls/s2n_ecc_preferences.c
  185. tls/s2n_encrypted_extensions.c
  186. tls/s2n_establish_session.c
  187. tls/s2n_fingerprint.c
  188. tls/s2n_handshake.c
  189. tls/s2n_handshake_hashes.c
  190. tls/s2n_handshake_io.c
  191. tls/s2n_handshake_transcript.c
  192. tls/s2n_handshake_type.c
  193. tls/s2n_kem.c
  194. tls/s2n_kem_preferences.c
  195. tls/s2n_kex.c
  196. tls/s2n_key_log.c
  197. tls/s2n_key_update.c
  198. tls/s2n_ktls.c
  199. tls/s2n_ktls_io.c
  200. tls/s2n_next_protocol.c
  201. tls/s2n_ocsp_stapling.c
  202. tls/s2n_post_handshake.c
  203. tls/s2n_prf.c
  204. tls/s2n_protocol_preferences.c
  205. tls/s2n_psk.c
  206. tls/s2n_quic_support.c
  207. tls/s2n_record_read.c
  208. tls/s2n_record_read_aead.c
  209. tls/s2n_record_read_cbc.c
  210. tls/s2n_record_read_composite.c
  211. tls/s2n_record_read_stream.c
  212. tls/s2n_record_write.c
  213. tls/s2n_recv.c
  214. tls/s2n_renegotiate.c
  215. tls/s2n_resume.c
  216. tls/s2n_security_policies.c
  217. tls/s2n_send.c
  218. tls/s2n_server_cert.c
  219. tls/s2n_server_cert_request.c
  220. tls/s2n_server_done.c
  221. tls/s2n_server_extensions.c
  222. tls/s2n_server_finished.c
  223. tls/s2n_server_hello.c
  224. tls/s2n_server_hello_retry.c
  225. tls/s2n_server_key_exchange.c
  226. tls/s2n_server_new_session_ticket.c
  227. tls/s2n_shutdown.c
  228. tls/s2n_signature_algorithms.c
  229. tls/s2n_signature_scheme.c
  230. tls/s2n_tls.c
  231. tls/s2n_tls13.c
  232. tls/s2n_tls13_certificate_verify.c
  233. tls/s2n_tls13_handshake.c
  234. tls/s2n_tls13_key_schedule.c
  235. tls/s2n_tls13_secrets.c
  236. tls/s2n_x509_validator.c
  237. utils/s2n_array.c
  238. utils/s2n_atomic.c
  239. utils/s2n_blob.c
  240. utils/s2n_ensure.c
  241. utils/s2n_fork_detection.c
  242. utils/s2n_init.c
  243. utils/s2n_io.c
  244. utils/s2n_map.c
  245. utils/s2n_mem.c
  246. utils/s2n_random.c
  247. utils/s2n_result.c
  248. utils/s2n_rfc5952.c
  249. utils/s2n_safety.c
  250. utils/s2n_set.c
  251. utils/s2n_socket.c
  252. utils/s2n_timer.c
  253. )
  254. END()