cmake.patch 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. diff --git a/CMakeLists.txt b/CMakeLists.txt
  2. index 6c70b55f9..22878365c 100644
  3. --- a/CMakeLists.txt
  4. +++ b/CMakeLists.txt
  5. @@ -557,92 +557,5 @@ if(USE_CUSTOM_LIBCXX)
  6. target_link_libraries(libcxx libcxxabi)
  7. endif()
  8. -# Add minimal googletest targets. The provided one has many side-effects, and
  9. -# googletest has a very straightforward build.
  10. -add_library(boringssl_gtest third_party/googletest/src/gtest-all.cc)
  11. -target_include_directories(boringssl_gtest PRIVATE third_party/googletest)
  12. -
  13. -include_directories(third_party/googletest/include)
  14. -
  15. -# Declare a dummy target to build all unit tests. Test targets should inject
  16. -# themselves as dependencies next to the target definition.
  17. -add_custom_target(all_tests)
  18. -
  19. -# On Windows, CRYPTO_TEST_DATA is too long to fit in command-line limits.
  20. -# TODO(davidben): CMake 3.12 has a list(JOIN) command. Use that when we've
  21. -# updated the minimum version.
  22. -set(EMBED_TEST_DATA_ARGS "")
  23. -foreach(arg ${CRYPTO_TEST_DATA})
  24. - set(EMBED_TEST_DATA_ARGS "${EMBED_TEST_DATA_ARGS}${arg}\n")
  25. -endforeach()
  26. -file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/embed_test_data_args.txt"
  27. - "${EMBED_TEST_DATA_ARGS}")
  28. -
  29. -add_custom_command(
  30. - OUTPUT crypto_test_data.cc
  31. - COMMAND ${GO_EXECUTABLE} run util/embed_test_data.go -file-list
  32. - "${CMAKE_CURRENT_BINARY_DIR}/embed_test_data_args.txt" >
  33. - "${CMAKE_CURRENT_BINARY_DIR}/crypto_test_data.cc"
  34. - DEPENDS util/embed_test_data.go ${CRYPTO_TEST_DATA}
  35. - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
  36. -
  37. -add_library(crypto_test_data OBJECT crypto_test_data.cc)
  38. -
  39. add_subdirectory(crypto)
  40. add_subdirectory(ssl)
  41. -add_subdirectory(ssl/test)
  42. -add_subdirectory(tool)
  43. -add_subdirectory(util/fipstools/cavp)
  44. -add_subdirectory(util/fipstools/acvp/modulewrapper)
  45. -add_subdirectory(decrepit)
  46. -
  47. -if(FUZZ)
  48. - if(LIBFUZZER_FROM_DEPS)
  49. - file(GLOB LIBFUZZER_SOURCES "util/bot/libFuzzer/*.cpp")
  50. - add_library(Fuzzer STATIC ${LIBFUZZER_SOURCES})
  51. - # libFuzzer does not pass our aggressive warnings. It also must be built
  52. - # without -fsanitize-coverage options or clang crashes.
  53. - set_target_properties(Fuzzer PROPERTIES COMPILE_FLAGS "-Wno-shadow -Wno-format-nonliteral -Wno-missing-prototypes -fsanitize-coverage=0")
  54. - endif()
  55. -
  56. - add_subdirectory(fuzz)
  57. -endif()
  58. -
  59. -if(UNIX AND NOT APPLE AND NOT ANDROID)
  60. - set(HANDSHAKER_ARGS "-handshaker-path" $<TARGET_FILE:handshaker>)
  61. -endif()
  62. -
  63. -if(FIPS)
  64. - add_custom_target(
  65. - acvp_tests
  66. - COMMAND ${GO_EXECUTABLE} build -o ${CMAKE_BINARY_DIR}/acvptool
  67. - boringssl.googlesource.com/boringssl/util/fipstools/acvp/acvptool
  68. - COMMAND ${GO_EXECUTABLE} build -o ${CMAKE_BINARY_DIR}/testmodulewrapper
  69. - boringssl.googlesource.com/boringssl/util/fipstools/acvp/acvptool/testmodulewrapper
  70. - COMMAND cd util/fipstools/acvp/acvptool/test &&
  71. - ${GO_EXECUTABLE} run check_expected.go
  72. - -tool ${CMAKE_BINARY_DIR}/acvptool
  73. - -module-wrappers modulewrapper:$<TARGET_FILE:modulewrapper>,testmodulewrapper:${CMAKE_BINARY_DIR}/testmodulewrapper
  74. - -tests tests.json
  75. - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
  76. - DEPENDS modulewrapper
  77. - USES_TERMINAL)
  78. -
  79. - add_custom_target(
  80. - fips_specific_tests_if_any
  81. - DEPENDS acvp_tests
  82. - )
  83. -else()
  84. - add_custom_target(fips_specific_tests_if_any)
  85. -endif()
  86. -
  87. -add_custom_target(
  88. - run_tests
  89. - COMMAND ${GO_EXECUTABLE} run util/all_tests.go -build-dir
  90. - ${CMAKE_BINARY_DIR}
  91. - COMMAND cd ssl/test/runner &&
  92. - ${GO_EXECUTABLE} test -shim-path $<TARGET_FILE:bssl_shim>
  93. - ${HANDSHAKER_ARGS} ${RUNNER_ARGS}
  94. - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
  95. - DEPENDS all_tests bssl_shim handshaker fips_specific_tests_if_any
  96. - USES_TERMINAL)
  97. diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt
  98. index d9cfa5c51..1dc878597 100644
  99. --- a/crypto/CMakeLists.txt
  100. +++ b/crypto/CMakeLists.txt
  101. @@ -91,7 +91,6 @@ function(perlasm dest src)
  102. endfunction()
  103. add_subdirectory(fipsmodule)
  104. -add_subdirectory(test)
  105. if(FIPS_DELOCATE OR FIPS_SHARED)
  106. SET_SOURCE_FILES_PROPERTIES(fipsmodule/bcm.o PROPERTIES EXTERNAL_OBJECT true)
  107. @@ -472,96 +471,3 @@ endif()
  108. if(USE_CUSTOM_LIBCXX)
  109. target_link_libraries(crypto libcxx)
  110. endif()
  111. -
  112. -# urandom_test is a separate binary because it needs to be able to observe the
  113. -# PRNG initialisation, which means that it can't have other tests running before
  114. -# it does.
  115. -add_executable(
  116. - urandom_test
  117. -
  118. - fipsmodule/rand/urandom_test.cc
  119. -)
  120. -
  121. -target_link_libraries(urandom_test test_support_lib boringssl_gtest crypto)
  122. -
  123. -add_dependencies(urandom_test global_target)
  124. -add_dependencies(all_tests urandom_test)
  125. -
  126. -add_executable(
  127. - crypto_test
  128. -
  129. - abi_self_test.cc
  130. - asn1/asn1_test.cc
  131. - base64/base64_test.cc
  132. - bio/bio_test.cc
  133. - blake2/blake2_test.cc
  134. - buf/buf_test.cc
  135. - bytestring/bytestring_test.cc
  136. - chacha/chacha_test.cc
  137. - cipher_extra/aead_test.cc
  138. - cipher_extra/cipher_test.cc
  139. - cmac/cmac_test.cc
  140. - compiler_test.cc
  141. - conf/conf_test.cc
  142. - constant_time_test.cc
  143. - cpu_arm_linux_test.cc
  144. - crypto_test.cc
  145. - curve25519/ed25519_test.cc
  146. - curve25519/spake25519_test.cc
  147. - curve25519/x25519_test.cc
  148. - ecdh_extra/ecdh_test.cc
  149. - dh_extra/dh_test.cc
  150. - digest_extra/digest_test.cc
  151. - dsa/dsa_test.cc
  152. - err/err_test.cc
  153. - evp/evp_extra_test.cc
  154. - evp/evp_test.cc
  155. - evp/pbkdf_test.cc
  156. - evp/scrypt_test.cc
  157. - fipsmodule/aes/aes_test.cc
  158. - fipsmodule/bn/bn_test.cc
  159. - fipsmodule/ec/ec_test.cc
  160. - fipsmodule/ec/p256-x86_64_test.cc
  161. - fipsmodule/ecdsa/ecdsa_test.cc
  162. - fipsmodule/md5/md5_test.cc
  163. - fipsmodule/modes/gcm_test.cc
  164. - fipsmodule/rand/ctrdrbg_test.cc
  165. - fipsmodule/rand/fork_detect_test.cc
  166. - fipsmodule/sha/sha_test.cc
  167. - hkdf/hkdf_test.cc
  168. - hpke/hpke_test.cc
  169. - hmac_extra/hmac_test.cc
  170. - hrss/hrss_test.cc
  171. - impl_dispatch_test.cc
  172. - lhash/lhash_test.cc
  173. - obj/obj_test.cc
  174. - pem/pem_test.cc
  175. - pkcs7/pkcs7_test.cc
  176. - pkcs8/pkcs8_test.cc
  177. - pkcs8/pkcs12_test.cc
  178. - poly1305/poly1305_test.cc
  179. - pool/pool_test.cc
  180. - rand_extra/rand_test.cc
  181. - refcount_test.cc
  182. - rsa_extra/rsa_test.cc
  183. - self_test.cc
  184. - stack/stack_test.cc
  185. - siphash/siphash_test.cc
  186. - test/file_test_gtest.cc
  187. - thread_test.cc
  188. - trust_token/trust_token_test.cc
  189. - x509/x509_test.cc
  190. - x509/x509_time_test.cc
  191. - x509v3/tab_test.cc
  192. -
  193. - $<TARGET_OBJECTS:crypto_test_data>
  194. - $<TARGET_OBJECTS:boringssl_gtest_main>
  195. -)
  196. -
  197. -add_dependencies(crypto_test global_target)
  198. -
  199. -target_link_libraries(crypto_test test_support_lib boringssl_gtest crypto)
  200. -if(WIN32)
  201. - target_link_libraries(crypto_test ws2_32)
  202. -endif()
  203. -add_dependencies(all_tests crypto_test)
  204. diff --git a/ssl/CMakeLists.txt b/ssl/CMakeLists.txt
  205. index 4f4abf8a4..2ee9b88fc 100644
  206. --- a/ssl/CMakeLists.txt
  207. +++ b/ssl/CMakeLists.txt
  208. @@ -46,20 +46,3 @@ add_dependencies(ssl global_target)
  209. target_link_libraries(ssl crypto)
  210. -add_executable(
  211. - ssl_test
  212. -
  213. - span_test.cc
  214. - ssl_test.cc
  215. - ssl_c_test.c
  216. -
  217. - $<TARGET_OBJECTS:boringssl_gtest_main>
  218. -)
  219. -
  220. -add_dependencies(ssl_test global_target)
  221. -
  222. -target_link_libraries(ssl_test test_support_lib boringssl_gtest ssl crypto)
  223. -if(WIN32)
  224. - target_link_libraries(ssl_test ws2_32)
  225. -endif()
  226. -add_dependencies(all_tests ssl_test)