+set(GOST_PROVIDER_SOURCE_FILES
+ gost_prov.c)
+
+#add_executable(test_digest test_digest.c)
+#target_link_libraries(test_digest gost_engine gost_core ${OPENSSL_CRYPTO_LIBRARY})
+#add_test(NAME digest
+# COMMAND test_digest)
+#
+#add_executable(test_curves test_curves.c)
+#target_link_libraries(test_curves gost_engine gost_core ${OPENSSL_CRYPTO_LIBRARY})
+#add_test(NAME curves
+# COMMAND test_curves)
+#
+#add_executable(test_params test_params.c)
+#target_link_libraries(test_params gost_engine gost_core ${OPENSSL_CRYPTO_LIBRARY})
+#add_test(NAME parameters
+# COMMAND test_params)
+#
+#add_executable(test_sign test_sign.c)
+#target_link_libraries(test_sign gost_engine gost_core ${OPENSSL_CRYPTO_LIBRARY})
+#add_test(NAME sign/verify
+# COMMAND test_sign)
+#
+#add_executable(test_tls test_tls.c)
+#target_link_libraries(test_tls gost_engine gost_core ${OPENSSL_CRYPTO_LIBRARY} ${OPENSSL_SSL_LIBRARY})
+#add_test(NAME TLS
+# COMMAND test_tls)
+#
+#add_executable(test_context test_context.c)
+#target_link_libraries(test_context gost_engine gost_core ${OPENSSL_CRYPTO_LIBRARY})
+#add_test(NAME context
+# COMMAND test_context)
+#
+#add_executable(test_grasshopper test_grasshopper.c)
+#target_link_libraries(test_grasshopper gost_engine gost_core ${OPENSSL_CRYPTO_LIBRARY})
+#add_test(NAME grasshopper
+# COMMAND test_grasshopper)
+#
+#add_executable(test_keyexpimp test_keyexpimp.c)
+##target_compile_definitions(test_keyexpimp PUBLIC -DOPENSSL_LOAD_CONF)
+#target_link_libraries(test_keyexpimp gost_engine gost_core ${OPENSSL_CRYPTO_LIBRARY})
+#add_test(NAME keyexpimp
+# COMMAND test_keyexpimp)
+#
+#add_executable(test_gost89 test_gost89.c)
+#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")
+endif()
+
+#add_executable(sign benchmark/sign.c)
+#target_link_libraries(sign gost_engine gost_core ${OPENSSL_CRYPTO_LIBRARY} ${CLOCK_GETTIME_LIB})
+#
+## All that may need to load just built engine will have path to it defined.
+#set(BINARY_TESTS_TARGETS
+# test_digest
+# test_curves
+# test_params
+# test_sign
+# test_context
+# test_grasshopper
+# test_keyexpimp
+# test_gost89
+# test_tls
+# )
+#set_property(TARGET ${BINARY_TESTS_TARGETS} APPEND PROPERTY COMPILE_DEFINITIONS ENGINE_DIR="${OUTPUT_DIRECTORY}")
+