aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorCraig Andrews <candrews@integralblue.com>2018-10-29 20:41:12 -0400
committerCraig Andrews <candrews@integralblue.com>2018-10-29 22:00:24 -0400
commit4892db5b0e54affb4a4eb635220c6669acb0d5ba (patch)
tree75ed4ed89110667be42e56348ca242837b31c612 /CMakeLists.txt
parent97430ebfe8d60932f3da76e43fd8a297579f1030 (diff)
downloadgost-engine-4892db5b0e54affb4a4eb635220c6669acb0d5ba.zip
gost-engine-4892db5b0e54affb4a4eb635220c6669acb0d5ba.tar.gz
gost-engine-4892db5b0e54affb4a4eb635220c6669acb0d5ba.tar.bz2
Discover OpenSSL engines directory
The directory can be overriden by setting the CMake variable OPENSSL_ENGINES_DIR
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt15
1 files changed, 12 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 774a1a7..55b86c9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -38,6 +38,16 @@ set(OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/${BIN_DIRECTORY})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${OUTPUT_DIRECTORY})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${OUTPUT_DIRECTORY})
+# Remove when https://gitlab.kitware.com/cmake/cmake/issues/18525 is addressed
+set(OPENSSL_ENGINES_DIR "" CACHE PATH "OpenSSL Engines Directory")
+if ("${OPENSSL_ENGINES_DIR}" STREQUAL "")
+ include(FindPkgConfig)
+ pkg_get_variable(OPENSSL_ENGINES_DIR libcrypto enginesdir)
+ if ("${OPENSSL_ENGINES_DIR}" STREQUAL "")
+ message( FATAL_ERROR "Unable to discover the OpenSSL engines directory. Provide the path using -DOPENSSL_ENGINES_DIR" )
+ endif()
+endif()
+
set(GOST_89_SOURCE_FILES
gost89.c
gost89.h
@@ -164,14 +174,13 @@ add_custom_target(tags
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}
+ LIBRARY DESTINATION ${OPENSSL_ENGINES_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:gost_engine> DESTINATION ${OPENSSL_ENGINES_DIR} OPTIONAL)
install(FILES $<TARGET_PDB_FILE:gostsum> $<TARGET_PDB_FILE:gost12sum> DESTINATION ${CMAKE_INSTALL_BINDIR} OPTIONAL)
endif()