summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/try_compile/EnvConfig.cmake
blob: 4040c593d2b12f4bb6f33cce7750af7e1b4a5150 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
enable_language(C)

set(ENV{CMAKE_BUILD_TYPE} "Bad")
set(ENV{CMAKE_CONFIGURATION_TYPES} "Bad;Debug")

add_library(tc_defs INTERFACE IMPORTED)
target_compile_definitions(tc_defs INTERFACE "TC_CONFIG_$<UPPER_CASE:$<CONFIG>>")

try_compile(ENV_CONFIG_RESULT "${CMAKE_BINARY_DIR}"
  SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/EnvConfig.c"
  COPY_FILE "${CMAKE_CURRENT_BINARY_DIR}/EnvConfig.bin"
  OUTPUT_VARIABLE tc_output
  LINK_LIBRARIES tc_defs
  )
if(NOT ENV_CONFIG_RESULT)
  string(REPLACE "\n" "\n  " tc_output "  ${tc_output}")
  message(FATAL_ERROR "try_compile failed:\n${tc_output}")
endif()