sanitizers.cmake 470 B

12345678910111213141516171819
  1. if(DRACO_CMAKE_SANITIZERS_CMAKE_)
  2. return()
  3. endif()
  4. set(DRACO_CMAKE_SANITIZERS_CMAKE_ 1)
  5. if(MSVC OR NOT SANITIZE)
  6. return()
  7. endif()
  8. include("${draco_root}/cmake/compiler_flags.cmake")
  9. string(TOLOWER ${SANITIZE} SANITIZE)
  10. # Require the sanitizer requested.
  11. require_linker_flag("-fsanitize=${SANITIZE}")
  12. require_compiler_flag("-fsanitize=${SANITIZE}" YES)
  13. # Make callstacks accurate.
  14. require_compiler_flag("-fno-omit-frame-pointer -fno-optimize-sibling-calls" YES)