| enable_language(CXX) |
| |
| set(variable_suffixes |
| COMPILER COMPILER_ID COMPILER_VERSION COMPILER_TARGET |
| IMPLICIT_INCLUDE_DIRECTORIES IMPLICIT_LINK_DIRECTORIES |
| IMPLICIT_LINK_FRAMEWORK_DIRECTORIES IMPLICIT_LINK_LIBRARIES |
| SOURCE_FILE_EXTENSIONS) |
| set(language CXX) |
| set(json "{}") |
| |
| foreach(variable_suffix ${variable_suffixes}) |
| set(variable "CMAKE_${language}_${variable_suffix}") |
| string(JSON json SET "${json}" "${variable}" "{}") |
| if(DEFINED "${variable}") |
| string(JSON json SET "${json}" "${variable}" "defined" "true") |
| string(JSON json SET "${json}" "${variable}" "value" "\"${${variable}}\"") |
| else() |
| string(JSON json SET "${json}" "${variable}" "defined" "false") |
| endif() |
| endforeach() |
| |
| file(WRITE ${CMAKE_BINARY_DIR}/toolchain_variables.json "${json}") |