XcodeSchemaProperty.cmake 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. cmake_minimum_required(VERSION 3.7)
  2. set(CMAKE_XCODE_GENERATE_SCHEME ON)
  3. project(XcodeSchemaProperty CXX)
  4. function(create_scheme_for_variable variable)
  5. set(CMAKE_XCODE_SCHEME_${variable} ON)
  6. add_executable(${variable} main.cpp)
  7. endfunction()
  8. create_scheme_for_variable(ADDRESS_SANITIZER)
  9. create_scheme_for_variable(ADDRESS_SANITIZER_USE_AFTER_RETURN)
  10. create_scheme_for_variable(THREAD_SANITIZER)
  11. create_scheme_for_variable(THREAD_SANITIZER_STOP)
  12. create_scheme_for_variable(UNDEFINED_BEHAVIOUR_SANITIZER)
  13. create_scheme_for_variable(UNDEFINED_BEHAVIOUR_SANITIZER_STOP)
  14. create_scheme_for_variable(DISABLE_MAIN_THREAD_CHECKER)
  15. create_scheme_for_variable(MAIN_THREAD_CHECKER_STOP)
  16. create_scheme_for_variable(MALLOC_SCRIBBLE)
  17. create_scheme_for_variable(MALLOC_GUARD_EDGES)
  18. create_scheme_for_variable(GUARD_MALLOC)
  19. create_scheme_for_variable(ZOMBIE_OBJECTS)
  20. create_scheme_for_variable(MALLOC_STACK)
  21. create_scheme_for_variable(DYNAMIC_LINKER_API_USAGE)
  22. create_scheme_for_variable(DYNAMIC_LIBRARY_LOADS)
  23. function(create_scheme_for_property property value)
  24. set(XCODE_SCHEME_${property} ON)
  25. add_executable(${property} main.cpp)
  26. set_target_properties(${property} PROPERTIES XCODE_SCHEME_${property} "${value}")
  27. endfunction()
  28. create_scheme_for_property(EXECUTABLE myExecutable)
  29. create_scheme_for_property(ARGUMENTS "--foo;--bar=baz")
  30. create_scheme_for_property(ENVIRONMENT "FOO=foo;BAR=bar")