+add_executable(gost12sum ${GOST_12_SUM_SOURCE_FILES})
+target_link_libraries(gost12sum gost_core)
+
+add_executable(unit_expimp gost_keyexpimp.c e_gost_err.c)
+target_compile_definitions(unit_expimp PUBLIC -DENABLE_UNIT_TESTS)
+target_compile_definitions(unit_expimp PUBLIC -DOPENSSL_LOAD_CONF)
+target_link_libraries(unit_expimp PUBLIC crypto)
+
+set_source_files_properties(tags PROPERTIES GENERATED true)
+add_custom_target(tags
+ COMMAND ctags -R . ${OPENSSL_ROOT_DIR}
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
+
+# install
+set(OPENSSL_ENGINES_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}/engines-${OPENSSL_VERSION_MAJOR}_${OPENSSL_VERSION_MINOR})
+set(OPENSSL_MAN_INSTALL_DIR ${CMAKE_INSTALL_MANDIR}/man1)
+
+install(TARGETS gost_engine gostsum gost12sum EXPORT GostEngineConfig
+ LIBRARY DESTINATION ${OPENSSL_ENGINES_INSTALL_DIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+install(FILES gostsum.1 gost12sum.1 DESTINATION ${OPENSSL_MAN_INSTALL_DIR})
+if (MSVC)
+ install(FILES $<TARGET_PDB_FILE:gost_engine> DESTINATION ${OPENSSL_ENGINES_INSTALL_DIR} OPTIONAL)
+ install(FILES $<TARGET_PDB_FILE:gostsum> $<TARGET_PDB_FILE:gost12sum> DESTINATION ${CMAKE_INSTALL_BINDIR} OPTIONAL)
+endif()