diff --git a/CMakeLists.txt b/CMakeLists.txt index 814d5d4606..c124a6a4a6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -258,12 +258,13 @@ endif() # Select curve encryption library, defaults to disabled To use libsodium instead, use --with-libsodium(must be # installed) To disable curve, use --disable-curve -option(WITH_LIBSODIUM "Use libsodium" OFF) +option(WITH_LIBSODIUM "Use libsodium (required with ENABLE_CURVE)" OFF) option(WITH_LIBSODIUM_STATIC "Use static libsodium library" OFF) option(ENABLE_LIBSODIUM_RANDOMBYTES_CLOSE "Automatically close libsodium randombytes. Not threadsafe without getrandom()" ON) option(ENABLE_CURVE "Enable CURVE security" OFF) if(ENABLE_CURVE) + # libsodium is currently the only CURVE provider if(WITH_LIBSODIUM) find_package("sodium") if(SODIUM_FOUND) @@ -280,12 +281,17 @@ if(ENABLE_CURVE) endif() else() message( - ERROR - "libsodium not installed, you may want to install libsodium and run cmake again" + FATAL_ERROR + "libsodium requested but not found, you may want to install libsodium and run cmake again" ) endif() + else() # WITH_LIBSODIUM + message( + FATAL_ERROR + "ENABLE_CURVE set, but not WITH_LIBSODIUM. No CURVE provider found." + ) endif() -else() +else() # ENABLE_CURVE message(STATUS "CURVE security is disabled") endif()