cmake_minimum_required(VERSION 2.8) project(libopenssl-download NONE) if (WIN32) find_program(MAKE_EXE NAMES nmake) SET(CONFIGURE_COMMAND perl ${CMAKE_CURRENT_BINARY_DIR}/build/src/project_libopenssl/Configure VC-WIN64A no-asm --prefix=${OPEN_SRC_INSTALL_PREFIX} --openssldir=${OPEN_SRC_INSTALL_PREFIX}) else() find_program(MAKE_EXE NAMES make) # OpenSSL takes a while to compile, so allow some parallelism. if (DEFINED ENV{CMAKE_BUILD_PARALLEL_LEVEL}) list(APPEND MAKE_EXE "-j$ENV{CMAKE_BUILD_PARALLEL_LEVEL}") endif() if (BUILD_STATIC_LIBS) SET(OPENSSL_EXTRA ${OPENSSL_EXTRA} no-shared no-dso) endif() if (DEFINED BUILD_OPENSSL_PLATFORM AND NOT BUILD_OPENSSL_PLATFORM STREQUAL OFF) SET(CONFIGURE_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/build/src/project_libopenssl/Configure ${OPENSSL_EXTRA} no-async --prefix=${OPEN_SRC_INSTALL_PREFIX} --openssldir=${OPEN_SRC_INSTALL_PREFIX} ${BUILD_OPENSSL_PLATFORM}) else() SET(CONFIGURE_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/build/src/project_libopenssl/config ${OPENSSL_EXTRA} --prefix=${OPEN_SRC_INSTALL_PREFIX} --openssldir=${OPEN_SRC_INSTALL_PREFIX}) endif() endif() include(ExternalProject) ExternalProject_Add(project_libopenssl GIT_REPOSITORY https://github.com/openssl/openssl.git GIT_TAG OpenSSL_1_1_1g PREFIX ${CMAKE_CURRENT_BINARY_DIR}/build CONFIGURE_COMMAND ${CONFIGURE_COMMAND} BUILD_COMMAND ${MAKE_EXE} BUILD_IN_SOURCE TRUE INSTALL_COMMAND ${MAKE_EXE} install_sw TEST_COMMAND "" )