if(PROJECT_ENABLE_LIBSODIUM) if(PROJECT_BUILD) pkg_check_modules(SODIUM libsodium=${LIBSODIUM_VERSION} REQUIRED) add_definitions(-DPROJECT_ENABLE_LIBSODIUM) include_directories(BEFORE SYSTEM ${SODIUM_INCLUDE_DIRS} ) link_libraries( ${SODIUM_LINK_LIBRARIES} ) elseif(NOT PROJECT_IS_MINGW OR CMAKE_HOST_WIN32) if(PROJECT_IS_MINGW) set(LIBSODIUM_TYPE mingw64) else() set(LIBSODIUM_TYPE linux) endif() if(PROJECT_BUILD_SHARED_LIBS) set(LIBSODIUM_ENABLE_SHARED yes) else() set(LIBSODIUM_ENABLE_SHARED no) endif() ExternalProject_Add(libsodium_project PREFIX external URL ${PROJECT_3RD_PARTY_DIR}/libsodium-${LIBSODIUM_VERSION}-RELEASE.tar.gz URL_HASH SHA256=4fb996013283f482f46a457c8ff2c1495e797788e78e8ec56b1aa1b19253bf75 BUILD_IN_SOURCE 1 LIST_SEPARATOR | CONFIGURE_COMMAND ${PROJECT_3RD_PARTY_DIR}/libsodium_configure.sh ${LIBSODIUM_TYPE} ${PROJECT_MARCH} ${PROJECT_EXTERNAL_BUILD_ROOT} ${LIBSODIUM_ENABLE_SHARED} BUILD_COMMAND make -j1 INSTALL_COMMAND make install ) set(PROJECT_DEPENDENCIES ${PROJECT_DEPENDENCIES} libsodium_project ) endif() endif()