48 lines
1.2 KiB
CMake
48 lines
1.2 KiB
CMake
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()
|