VsDebuggerEnvironment-check.cmake 820 B

123456789101112131415161718192021222324
  1. foreach(target foo bar)
  2. set(vcProjectFile "${RunCMake_TEST_BINARY_DIR}/${target}.vcxproj")
  3. if(NOT EXISTS "${vcProjectFile}")
  4. set(RunCMake_TEST_FAILED "Project file ${vcProjectFile} does not exist.")
  5. return()
  6. endif()
  7. set(debuggerEnvironmentSet FALSE)
  8. file(STRINGS "${vcProjectFile}" lines)
  9. foreach(line IN LISTS lines)
  10. if(line MATCHES "^ *<LocalDebuggerEnvironment[^>]*>([^<>]+)</LocalDebuggerEnvironment>$")
  11. if("${CMAKE_MATCH_1}" STREQUAL "my-debugger-environment foo")
  12. message(STATUS "${target}.vcxproj has debugger environment set")
  13. set(debuggerEnvironmentSet TRUE)
  14. endif()
  15. endif()
  16. endforeach()
  17. if(NOT debuggerEnvironmentSet)
  18. set(RunCMake_TEST_FAILED "LocalDebuggerEnvironment not found or not set correctly.")
  19. return()
  20. endif()
  21. endforeach()