Files
libgit2/cmake/SanitizeInput.cmake
Edward Thomson 4546929e00 cmake: case insensitive options
It's hard to remember whether it's `-DUSE_HTTPS=mbedTLS` or
`-DUSE_HTTPS=mbedtls`. Even worse for things like `builtin` which we may
have been inconsistent about. Allow for case insensitive options.
2025-01-02 12:36:46 +00:00

23 lines
625 B
CMake

function(SanitizeInput VAR)
string(TOLOWER "${${VAR}}" VALUE)
if(VALUE STREQUAL "on")
set(${VAR} "ON" PARENT_SCOPE)
elseif(VALUE STREQUAL "yes")
set(${VAR} "ON" PARENT_SCOPE)
elseif(VALUE STREQUAL "true")
set(${VAR} "ON" PARENT_SCOPE)
elseif(VALUE STREQUAL "1")
set(${VAR} "ON" PARENT_SCOPE)
elseif(VALUE STREQUAL "off")
set(${VAR} "OFF" PARENT_SCOPE)
elseif(VALUE STREQUAL "no")
set(${VAR} "OFF" PARENT_SCOPE)
elseif(VALUE STREQUAL "false")
set(${VAR} "OFF" PARENT_SCOPE)
elseif(VALUE STREQUAL "0")
set(${VAR} "OFF" PARENT_SCOPE)
else()
set(${VAR} "${VALUE}" PARENT_SCOPE)
endif()
endfunction()