\r
include(${CMAKE_CURRENT_LIST_DIR}/ConfigureChecks.cmake)\r
\r
-if(NOT WIN32)\r
- if(USE_GETRANDOM AND NOT (USE_GETRANDOM STREQUAL "AUTO") AND NOT HAVE_GETRANDOM)\r
+macro(evaluate_detection_results use_ref have_ref thing_lower thing_title)\r
+ if(${use_ref} AND NOT (${use_ref} STREQUAL "AUTO") AND NOT ${have_ref})\r
message(SEND_ERROR\r
- "Use of function getrandom was enforced by USE_GETRANDOM=ON but it could not be found.")\r
- elseif(NOT USE_GETRANDOM AND HAVE_GETRANDOM)\r
- message("Function getrandom was found but it will not be used due to USE_GETRANDOM=OFF.")\r
- set(HAVE_GETRANDOM 0)\r
+ "Use of ${thing_lower} was enforced by ${use_ref}=ON but it could not be found.")\r
+ elseif(NOT ${use_ref} AND ${have_ref})\r
+ message("${thing_title} was found but it will not be used due to ${use_ref}=OFF.")\r
+ set(${have_ref} 0)\r
endif()\r
+endmacro()\r
\r
-\r
- if(USE_SYS_GETRANDOM AND NOT (USE_SYS_GETRANDOM STREQUAL "AUTO") AND NOT HAVE_SYSCALL_GETRANDOM)\r
- message(SEND_ERROR\r
- "Use of syscall SYS_getrandom was enforced by USE_SYS_GETRANDOM=ON but it could not be found.")\r
- elseif(NOT USE_SYS_GETRANDOM AND HAVE_SYSCALL_GETRANDOM)\r
- message("Syscall SYS_getrandom was found but it will not be used due to USE_SYS_GETRANDOM=OFF.")\r
- set(HAVE_SYSCALL_GETRANDOM 0)\r
- endif()\r
+if(NOT WIN32)\r
+ evaluate_detection_results(USE_GETRANDOM HAVE_GETRANDOM "function getrandom" "Function getrandom")\r
+ evaluate_detection_results(USE_SYS_GETRANDOM HAVE_SYSCALL_GETRANDOM "syscall SYS_getrandom" "Syscall SYS_getrandom")\r
endif()\r
\r
\r