From 02952ace408e331237a1ccd724f072b3e67ceb20 Mon Sep 17 00:00:00 2001 From: thermatk Date: Wed, 23 Jan 2019 22:16:34 +0100 Subject: [PATCH] only build what we need --- CMakeLists.txt | 36 --------------------- crypto/CMakeLists.txt | 74 ------------------------------------------- ssl/CMakeLists.txt | 18 ------------------ 3 files changed, 128 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index fd3532664..7fcfb1627 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -562,44 +562,8 @@ 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) @@ -589,14 +564,3 @@ endif() if(UNIX AND NOT APPLE AND NOT ANDROID) set(HANDSHAKER_ARGS "-handshaker-path" $) 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 - USES_TERMINAL) diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt index e940f7d5f..f5221d70d 100644 --- a/crypto/CMakeLists.txt +++ b/crypto/CMakeLists.txt @@ -85,7 +85,6 @@ function(perlasm dest src) endfunction() add_subdirectory(fipsmodule) -add_subdirectory(test) if(FIPS_DELOCATE) SET_SOURCE_FILES_PROPERTIES(fipsmodule/bcm.o PROPERTIES EXTERNAL_OBJECT true) @@ -466,94 +466,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 - buf/buf_test.cc - bio/bio_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 - constant_time_test.cc - cpu-arm-linux_test.cc - curve25519/ed25519_test.cc - curve25519/spake25519_test.cc - curve25519/x25519_test.cc - ecdh_extra/ecdh_test.cc - dh/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 - x509v3/v3name_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 0fb532eae..f5cab9807 100644 --- a/ssl/CMakeLists.txt +++ b/ssl/CMakeLists.txt @@ -44,21 +44,3 @@ add_library( 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) -- 2.20.1