build.info 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. # We make separate GOAL variables for each algorithm, to make it easy to
  2. # switch each to the Legacy provider when needed.
  3. #
  4. # $TDES_1_GOAL and $TDES_2_GOAL separate FIPSable and non-FIPSable TDES.
  5. # The latter may become legacy sooner, so it's comfortable to have two
  6. # variables already now, to switch the non-FIPSable TDES to legacy if needed.
  7. $COMMON_GOAL=../../libcommon.a
  8. $NULL_GOAL=../../libdefault.a
  9. $AES_GOAL=../../libdefault.a ../../libfips.a
  10. $TDES_1_GOAL=../../libdefault.a ../../libfips.a
  11. $TDES_2_GOAL=../../libdefault.a
  12. $ARIA_GOAL=../../libdefault.a
  13. $CAMELLIA_GOAL=../../libdefault.a
  14. $DES_GOAL=../../liblegacy.a
  15. $BLOWFISH_GOAL=../../liblegacy.a
  16. $IDEA_GOAL=../../liblegacy.a
  17. $CAST5_GOAL=../../liblegacy.a
  18. $RC2_GOAL=../../liblegacy.a
  19. $RC4_GOAL=../../liblegacy.a
  20. $RC5_GOAL=../../liblegacy.a
  21. $SEED_GOAL=../../liblegacy.a
  22. $SM4_GOAL=../../libdefault.a
  23. $CHACHA_GOAL=../../libdefault.a
  24. $CHACHAPOLY_GOAL=../../libdefault.a
  25. $SIV_GOAL=../../libdefault.a
  26. IF[{- !$disabled{asm} -}]
  27. $GHASHDEF_x86=GHASH_ASM
  28. $GHASHDEF_x86_sse2=OPENSSL_IA32_SSE2
  29. $GHASHDEF_x86_64=GHASH_ASM
  30. $GHASHDEF_x86_64_sse2=OPENSSL_IA32_SSE2
  31. # ghash-ia64.s doesn't work on VMS
  32. IF[{- $config{target} !~ /^vms-/ -}]
  33. $GHASHDEF_ia64=GHASH_ASM
  34. ENDIF
  35. $GHASHDEF_sparcv9=GHASH_ASM
  36. $GHASHDEF_alpha=GHASH_ASM
  37. $GHASHDEF_s390x=GHASH_ASM
  38. $GHASHDEF_armv4=GHASH_ASM
  39. $GHASHDEF_aarch64=
  40. $GHASHDEF_parisc11=GHASH_ASM
  41. $GHASHDEF_parisc20_64=$GHASHDEF_parisc11
  42. $GHASHDEF_ppc32=
  43. $GHASHDEF_ppc64=$GHASHDEF_ppc32
  44. $GHASHDEF_c64xplus=GHASH_ASM
  45. $GHASHDEF_riscv64=GHASH_ASM
  46. # Now that we have defined all the arch specific variables, use the
  47. # appropriate one, and define the appropriate macros
  48. IF[$GHASHDEF_{- $target{asm_arch} -}]
  49. $GHASHDEF=$GHASHDEF_{- $target{asm_arch} -}
  50. IF[{- !$disabled{sse2} -}]
  51. IF[$GHASHDEF_{- $target{asm_arch} -}_sse2]
  52. $GHASHDEF=$GHASHDEF_{- $target{asm_arch} -}_sse2
  53. ENDIF
  54. ENDIF
  55. ENDIF
  56. ENDIF
  57. # This source is common building blocks for all ciphers in all our providers.
  58. SOURCE[$COMMON_GOAL]=\
  59. ciphercommon.c ciphercommon_hw.c ciphercommon_block.c \
  60. ciphercommon_gcm.c ciphercommon_gcm_hw.c \
  61. ciphercommon_ccm.c ciphercommon_ccm_hw.c
  62. IF[{- !$disabled{des} -}]
  63. SOURCE[$TDES_1_GOAL]=cipher_tdes.c cipher_tdes_common.c cipher_tdes_hw.c
  64. ENDIF
  65. SOURCE[$NULL_GOAL]=\
  66. cipher_null.c
  67. SOURCE[$AES_GOAL]=\
  68. cipher_aes.c cipher_aes_hw.c \
  69. cipher_aes_xts.c cipher_aes_xts_hw.c \
  70. cipher_aes_gcm.c cipher_aes_gcm_hw.c \
  71. cipher_aes_ccm.c cipher_aes_ccm_hw.c \
  72. cipher_aes_wrp.c \
  73. cipher_aes_cbc_hmac_sha.c \
  74. cipher_aes_cbc_hmac_sha256_hw.c cipher_aes_cbc_hmac_sha1_hw.c \
  75. cipher_cts.c
  76. # Extra code to satisfy the FIPS and non-FIPS separation.
  77. # When the AES-xxx-XTS moves to legacy, cipher_aes_xts_fips.c can be removed.
  78. SOURCE[$AES_GOAL]=cipher_aes_xts_fips.c
  79. IF[{- !$disabled{siv} -}]
  80. DEFINE[$SIV_GOAL]=$GHASHDEF
  81. SOURCE[$SIV_GOAL]=\
  82. cipher_aes_siv.c cipher_aes_siv_hw.c \
  83. cipher_aes_gcm_siv.c cipher_aes_gcm_siv_hw.c cipher_aes_gcm_siv_polyval.c
  84. ENDIF
  85. IF[{- !$disabled{des} -}]
  86. SOURCE[$TDES_2_GOAL]=\
  87. cipher_tdes_default.c cipher_tdes_default_hw.c \
  88. cipher_tdes_wrap.c cipher_tdes_wrap_hw.c
  89. SOURCE[$DES_GOAL]=\
  90. cipher_desx.c cipher_desx_hw.c \
  91. cipher_des.c cipher_des_hw.c
  92. IF[{- !$disabled{module} -}]
  93. SOURCE[$DES_GOAL]=\
  94. cipher_tdes_common.c
  95. ENDIF
  96. ENDIF
  97. IF[{- !$disabled{aria} -}]
  98. SOURCE[$ARIA_GOAL]=\
  99. cipher_aria.c cipher_aria_hw.c \
  100. cipher_aria_gcm.c cipher_aria_gcm_hw.c \
  101. cipher_aria_ccm.c cipher_aria_ccm_hw.c
  102. ENDIF
  103. IF[{- !$disabled{camellia} -}]
  104. SOURCE[$CAMELLIA_GOAL]=\
  105. cipher_camellia.c cipher_camellia_hw.c
  106. ENDIF
  107. IF[{- !$disabled{bf} -}]
  108. SOURCE[$BLOWFISH_GOAL]=\
  109. cipher_blowfish.c cipher_blowfish_hw.c
  110. ENDIF
  111. IF[{- !$disabled{idea} -}]
  112. SOURCE[$IDEA_GOAL]=\
  113. cipher_idea.c cipher_idea_hw.c
  114. ENDIF
  115. IF[{- !$disabled{cast} -}]
  116. SOURCE[$CAST5_GOAL]=\
  117. cipher_cast5.c cipher_cast5_hw.c
  118. ENDIF
  119. IF[{- !$disabled{seed} -}]
  120. SOURCE[$SEED_GOAL]=\
  121. cipher_seed.c cipher_seed_hw.c
  122. ENDIF
  123. IF[{- !$disabled{sm4} -}]
  124. SOURCE[$SM4_GOAL]=\
  125. cipher_sm4.c cipher_sm4_hw.c \
  126. cipher_sm4_gcm.c cipher_sm4_gcm_hw.c \
  127. cipher_sm4_ccm.c cipher_sm4_ccm_hw.c
  128. ENDIF
  129. IF[{- !$disabled{ocb} -}]
  130. SOURCE[$AES_GOAL]=\
  131. cipher_aes_ocb.c cipher_aes_ocb_hw.c
  132. ENDIF
  133. IF[{- !$disabled{rc4} -}]
  134. SOURCE[$RC4_GOAL]=\
  135. cipher_rc4.c cipher_rc4_hw.c
  136. IF[{- !$disabled{md5} -}]
  137. SOURCE[$RC4_GOAL]=\
  138. cipher_rc4_hmac_md5.c cipher_rc4_hmac_md5_hw.c
  139. ENDIF
  140. ENDIF
  141. IF[{- !$disabled{rc5} -}]
  142. SOURCE[$RC5_GOAL]=\
  143. cipher_rc5.c cipher_rc5_hw.c
  144. ENDIF
  145. IF[{- !$disabled{rc2} -}]
  146. SOURCE[$RC2_GOAL]=\
  147. cipher_rc2.c cipher_rc2_hw.c
  148. ENDIF
  149. IF[{- !$disabled{chacha} -}]
  150. SOURCE[$CHACHA_GOAL]=\
  151. cipher_chacha20.c cipher_chacha20_hw.c
  152. IF[{- !$disabled{poly1305} -}]
  153. SOURCE[$CHACHAPOLY_GOAL]=\
  154. cipher_chacha20_poly1305.c cipher_chacha20_poly1305_hw.c
  155. ENDIF
  156. ENDIF