X-Git-Url: http://wagner.pp.ru/gitweb/?a=blobdiff_plain;f=CMakeLists.txt;h=91c99a117809feb687c78661efef691ff3900951;hb=dc80c109e5d121f906bbf8a77d4646fbf990fe32;hp=4c069700e334a14526f36050097444044f44abcb;hpb=6061d170c7993f943a7ee5443ed9ddc544459b9e;p=openssl-gost%2Fengine.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 4c06970..91c99a1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -25,6 +25,7 @@ endif() if (ASAN) message(STATUS "address sanitizer enabled") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address -g3 -fno-omit-frame-pointer") + set(SKIP_PERL_TESTS 1) endif() # DEPRECATEDIN_3_0 CMAC @@ -135,6 +136,14 @@ set(GOST_CORE_SOURCE_FILES set(GOST_EC_SOURCE_FILES gost_ec_keyx.c gost_ec_sign.c + ecp_id_GostR3410_2001_CryptoPro_A_ParamSet.c + ecp_id_GostR3410_2001_CryptoPro_B_ParamSet.c + ecp_id_GostR3410_2001_CryptoPro_C_ParamSet.c + ecp_id_GostR3410_2001_TestParamSet.c + ecp_id_tc26_gost_3410_2012_256_paramSetA.c + ecp_id_tc26_gost_3410_2012_512_paramSetA.c + ecp_id_tc26_gost_3410_2012_512_paramSetB.c + ecp_id_tc26_gost_3410_2012_512_paramSetC.c ) set (GOST_OMAC_SOURCE_FILES @@ -207,12 +216,18 @@ target_link_libraries(test_gost89 gost_engine gost_core ${OPENSSL_CRYPTO_LIBRARY add_test(NAME gost89 COMMAND test_gost89) -if(NOT ASAN) -add_test(NAME engine - COMMAND perl run_tests - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/test) -set_tests_properties(engine PROPERTIES ENVIRONMENT - "OPENSSL_ROOT_DIR=${OPENSSL_ROOT_DIR};OPENSSL_ENGINES=${OUTPUT_DIRECTORY};OPENSSL_CONF=${CMAKE_SOURCE_DIR}/test/empty.cnf") +if(NOT SKIP_PERL_TESTS) + execute_process(COMMAND perl -MTest2::V0 -e "" + ERROR_QUIET RESULT_VARIABLE HAVE_TEST2_V0) + if(NOT HAVE_TEST2_V0) + add_test(NAME engine + COMMAND perl run_tests + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/test) + set_tests_properties(engine PROPERTIES ENVIRONMENT + "OPENSSL_ROOT_DIR=${OPENSSL_ROOT_DIR};OPENSSL_ENGINES=${OUTPUT_DIRECTORY};OPENSSL_CONF=${CMAKE_SOURCE_DIR}/test/empty.cnf") + else() + message(STATUS "No Test2::V0 perl module (engine tests skipped)") + endif() endif() add_executable(sign benchmark/sign.c)