[cmake] force configuration options

limit multiconfiguration options to supported types
This commit is contained in:
akallabeth
2024-11-12 09:36:25 +01:00
parent 9ac770b70e
commit ba8fd2ada5
43 changed files with 158 additions and 159 deletions

View File

@@ -1,12 +1,11 @@
function(CFlagsToVar NAME)
function(CFlagsToVar NAME CFG)
string(TOUPPER "${CFG}" UCFG)
set(C_FLAGS ${CMAKE_C_FLAGS})
string(REPLACE "${CMAKE_SOURCE_DIR}" "<src dir>" C_FLAGS "${C_FLAGS}")
string(REPLACE "${CMAKE_BINARY_DIR}" "<build dir>" C_FLAGS "${C_FLAGS}")
if(CMAKE_BUILD_TYPE)
string(TOUPPER "${CMAKE_BUILD_TYPE}" CAPS_BUILD_TYPE)
string(APPEND C_FLAGS " ${CMAKE_C_FLAGS_${CAPS_BUILD_TYPE}}")
endif()
string(APPEND C_FLAGS " ${CMAKE_C_FLAGS_${UCFG}}")
string(REPLACE "\$" "\\\$" C_FLAGS "${C_FLAGS}")
string(REPLACE "\"" "\\\"" C_FLAGS "${C_FLAGS}")
set(${NAME} ${C_FLAGS} PARENT_SCOPE)