diff --git a/CMakeLists.txt b/CMakeLists.txt index 6c70b55f9..22878365c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -557,92 +557,5 @@ if(USE_CUSTOM_LIBCXX) target_link_libraries(libcxx libcxxabi) endif() -# Add minimal googletest targets. The provided one has many side-effects, and -# googletest has a very straightforward build. -add_library(boringssl_gtest third_party/googletest/src/gtest-all.cc) -target_include_directories(boringssl_gtest PRIVATE third_party/googletest) - -include_directories(third_party/googletest/include) - -# Declare a dummy target to build all unit tests. Test targets should inject -# themselves as dependencies next to the target definition. -add_custom_target(all_tests) - -# On Windows, CRYPTO_TEST_DATA is too long to fit in command-line limits. -# TODO(davidben): CMake 3.12 has a list(JOIN) command. Use that when we've -# updated the minimum version. -set(EMBED_TEST_DATA_ARGS "") -foreach(arg ${CRYPTO_TEST_DATA}) - set(EMBED_TEST_DATA_ARGS "${EMBED_TEST_DATA_ARGS}${arg}\n") -endforeach() -file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/embed_test_data_args.txt" - "${EMBED_TEST_DATA_ARGS}") - -add_custom_command( - OUTPUT crypto_test_data.cc - COMMAND ${GO_EXECUTABLE} run util/embed_test_data.go -file-list - "${CMAKE_CURRENT_BINARY_DIR}/embed_test_data_args.txt" > - "${CMAKE_CURRENT_BINARY_DIR}/crypto_test_data.cc" - DEPENDS util/embed_test_data.go ${CRYPTO_TEST_DATA} - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) - -add_library(crypto_test_data OBJECT crypto_test_data.cc) - add_subdirectory(crypto) add_subdirectory(ssl) -add_subdirectory(ssl/test) -add_subdirectory(tool) -add_subdirectory(util/fipstools/cavp) -add_subdirectory(util/fipstools/acvp/modulewrapper) -add_subdirectory(decrepit) - -if(FUZZ) - if(LIBFUZZER_FROM_DEPS) - file(GLOB LIBFUZZER_SOURCES "util/bot/libFuzzer/*.cpp") - add_library(Fuzzer STATIC ${LIBFUZZER_SOURCES}) - # libFuzzer does not pass our aggressive warnings. It also must be built - # without -fsanitize-coverage options or clang crashes. - set_target_properties(Fuzzer PROPERTIES COMPILE_FLAGS "-Wno-shadow -Wno-format-nonliteral -Wno-missing-prototypes -fsanitize-coverage=0") - endif() - - add_subdirectory(fuzz) -endif() - -if(UNIX AND NOT APPLE AND NOT ANDROID) - set(HANDSHAKER_ARGS "-handshaker-path" $) -endif() - -if(FIPS) - add_custom_target( - acvp_tests - COMMAND ${GO_EXECUTABLE} build -o ${CMAKE_BINARY_DIR}/acvptool - boringssl.googlesource.com/boringssl/util/fipstools/acvp/acvptool - COMMAND ${GO_EXECUTABLE} build -o ${CMAKE_BINARY_DIR}/testmodulewrapper - boringssl.googlesource.com/boringssl/util/fipstools/acvp/acvptool/testmodulewrapper - COMMAND cd util/fipstools/acvp/acvptool/test && - ${GO_EXECUTABLE} run check_expected.go - -tool ${CMAKE_BINARY_DIR}/acvptool - -module-wrappers modulewrapper:$,testmodulewrapper:${CMAKE_BINARY_DIR}/testmodulewrapper - -tests tests.json - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - DEPENDS modulewrapper - USES_TERMINAL) - - add_custom_target( - fips_specific_tests_if_any - DEPENDS acvp_tests - ) -else() - add_custom_target(fips_specific_tests_if_any) -endif() - -add_custom_target( - run_tests - COMMAND ${GO_EXECUTABLE} run util/all_tests.go -build-dir - ${CMAKE_BINARY_DIR} - COMMAND cd ssl/test/runner && - ${GO_EXECUTABLE} test -shim-path $ - ${HANDSHAKER_ARGS} ${RUNNER_ARGS} - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - DEPENDS all_tests bssl_shim handshaker fips_specific_tests_if_any - USES_TERMINAL) diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt index d9cfa5c51..1dc878597 100644 --- a/crypto/CMakeLists.txt +++ b/crypto/CMakeLists.txt @@ -91,7 +91,6 @@ function(perlasm dest src) endfunction() add_subdirectory(fipsmodule) -add_subdirectory(test) if(FIPS_DELOCATE OR FIPS_SHARED) SET_SOURCE_FILES_PROPERTIES(fipsmodule/bcm.o PROPERTIES EXTERNAL_OBJECT true) @@ -472,96 +471,3 @@ endif() if(USE_CUSTOM_LIBCXX) target_link_libraries(crypto libcxx) endif() - -# urandom_test is a separate binary because it needs to be able to observe the -# PRNG initialisation, which means that it can't have other tests running before -# it does. -add_executable( - urandom_test - - fipsmodule/rand/urandom_test.cc -) - -target_link_libraries(urandom_test test_support_lib boringssl_gtest crypto) - -add_dependencies(urandom_test global_target) -add_dependencies(all_tests urandom_test) - -add_executable( - crypto_test - - abi_self_test.cc - asn1/asn1_test.cc - base64/base64_test.cc - bio/bio_test.cc - blake2/blake2_test.cc - buf/buf_test.cc - bytestring/bytestring_test.cc - chacha/chacha_test.cc - cipher_extra/aead_test.cc - cipher_extra/cipher_test.cc - cmac/cmac_test.cc - compiler_test.cc - conf/conf_test.cc - constant_time_test.cc - cpu_arm_linux_test.cc - crypto_test.cc - curve25519/ed25519_test.cc - curve25519/spake25519_test.cc - curve25519/x25519_test.cc - ecdh_extra/ecdh_test.cc - dh_extra/dh_test.cc - digest_extra/digest_test.cc - dsa/dsa_test.cc - err/err_test.cc - evp/evp_extra_test.cc - evp/evp_test.cc - evp/pbkdf_test.cc - evp/scrypt_test.cc - fipsmodule/aes/aes_test.cc - fipsmodule/bn/bn_test.cc - fipsmodule/ec/ec_test.cc - fipsmodule/ec/p256-x86_64_test.cc - fipsmodule/ecdsa/ecdsa_test.cc - fipsmodule/md5/md5_test.cc - fipsmodule/modes/gcm_test.cc - fipsmodule/rand/ctrdrbg_test.cc - fipsmodule/rand/fork_detect_test.cc - fipsmodule/sha/sha_test.cc - hkdf/hkdf_test.cc - hpke/hpke_test.cc - hmac_extra/hmac_test.cc - hrss/hrss_test.cc - impl_dispatch_test.cc - lhash/lhash_test.cc - obj/obj_test.cc - pem/pem_test.cc - pkcs7/pkcs7_test.cc - pkcs8/pkcs8_test.cc - pkcs8/pkcs12_test.cc - poly1305/poly1305_test.cc - pool/pool_test.cc - rand_extra/rand_test.cc - refcount_test.cc - rsa_extra/rsa_test.cc - self_test.cc - stack/stack_test.cc - siphash/siphash_test.cc - test/file_test_gtest.cc - thread_test.cc - trust_token/trust_token_test.cc - x509/x509_test.cc - x509/x509_time_test.cc - x509v3/tab_test.cc - - $ - $ -) - -add_dependencies(crypto_test global_target) - -target_link_libraries(crypto_test test_support_lib boringssl_gtest crypto) -if(WIN32) - target_link_libraries(crypto_test ws2_32) -endif() -add_dependencies(all_tests crypto_test) diff --git a/ssl/CMakeLists.txt b/ssl/CMakeLists.txt index 4f4abf8a4..2ee9b88fc 100644 --- a/ssl/CMakeLists.txt +++ b/ssl/CMakeLists.txt @@ -46,20 +46,3 @@ add_dependencies(ssl global_target) target_link_libraries(ssl crypto) -add_executable( - ssl_test - - span_test.cc - ssl_test.cc - ssl_c_test.c - - $ -) - -add_dependencies(ssl_test global_target) - -target_link_libraries(ssl_test test_support_lib boringssl_gtest ssl crypto) -if(WIN32) - target_link_libraries(ssl_test ws2_32) -endif() -add_dependencies(all_tests ssl_test)