forked from wolfSSL/wolfssl
Merge pull request #7380 from oltolm/yesno
make "yes;no" cmake options boolean instead of string
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
function(override_cache VAR VAL)
|
function(override_cache VAR VAL)
|
||||||
get_property(VAR_STRINGS CACHE ${VAR} PROPERTY STRINGS)
|
get_property(VAR_STRINGS CACHE ${VAR} PROPERTY STRINGS)
|
||||||
LIST(FIND VAR_STRINGS ${VAL} CK)
|
LIST(FIND VAR_STRINGS ${VAL} CK)
|
||||||
if(-1 EQUAL ${CK})
|
if(-1 EQUAL ${CK} AND DEFINED VAR_STRINGS)
|
||||||
message(SEND_ERROR
|
message(SEND_ERROR
|
||||||
"\"${VAL}\" is not valid override value for \"${VAR}\"."
|
"\"${VAL}\" is not valid override value for \"${VAR}\"."
|
||||||
" Please select value from \"${VAR_STRINGS}\"\n")
|
" Please select value from \"${VAR_STRINGS}\"\n")
|
||||||
@@ -10,10 +10,15 @@ function(override_cache VAR VAL)
|
|||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(add_option NAME HELP_STRING DEFAULT VALUES)
|
function(add_option NAME HELP_STRING DEFAULT VALUES)
|
||||||
# Set the default value for the option.
|
if(VALUES STREQUAL "yes;no")
|
||||||
set(${NAME} ${DEFAULT} CACHE STRING ${HELP_STRING})
|
# Set the default value for the option.
|
||||||
# Set the list of allowed values for the option.
|
set(${NAME} ${DEFAULT} CACHE BOOL ${HELP_STRING})
|
||||||
set_property(CACHE ${NAME} PROPERTY STRINGS ${VALUES})
|
else()
|
||||||
|
# Set the default value for the option.
|
||||||
|
set(${NAME} ${DEFAULT} CACHE STRING ${HELP_STRING})
|
||||||
|
# Set the list of allowed values for the option.
|
||||||
|
set_property(CACHE ${NAME} PROPERTY STRINGS ${VALUES})
|
||||||
|
endif()
|
||||||
|
|
||||||
if(DEFINED ${NAME})
|
if(DEFINED ${NAME})
|
||||||
list(FIND VALUES ${${NAME}} IDX)
|
list(FIND VALUES ${${NAME}} IDX)
|
||||||
|
Reference in New Issue
Block a user