Home | History | Annotate | Download | only in scudo
      1 add_custom_target(scudo)
      2 set_target_properties(scudo PROPERTIES FOLDER "Compiler-RT Misc")
      3 
      4 include_directories(..)
      5 
      6 set(SCUDO_CFLAGS ${SANITIZER_COMMON_CFLAGS})
      7 append_rtti_flag(OFF SCUDO_CFLAGS)
      8 list(APPEND SCUDO_CFLAGS -msse4.2 -mcx16)
      9 
     10 set(SCUDO_SOURCES
     11   scudo_allocator.cpp
     12   scudo_flags.cpp
     13   scudo_interceptors.cpp
     14   scudo_new_delete.cpp
     15   scudo_termination.cpp
     16   scudo_utils.cpp)
     17 
     18 if(COMPILER_RT_HAS_SCUDO)
     19   foreach(arch ${SCUDO_SUPPORTED_ARCH})
     20     add_compiler_rt_runtime(clang_rt.scudo
     21       STATIC
     22       ARCHS ${arch}
     23       SOURCES ${SCUDO_SOURCES}
     24               $<TARGET_OBJECTS:RTInterception.${arch}>
     25               $<TARGET_OBJECTS:RTSanitizerCommonNoTermination.${arch}>
     26               $<TARGET_OBJECTS:RTSanitizerCommonLibc.${arch}>
     27       CFLAGS ${SCUDO_CFLAGS}
     28       PARENT_TARGET scudo)
     29   endforeach()
     30 endif()
     31 
     32 add_dependencies(compiler-rt scudo)
     33 
     34