brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.7 KiB · a4413d9 Raw
107 lines · plain
1include_directories(..)2 3set(RTSAN_CXX_SOURCES4  rtsan.cpp5  rtsan_context.cpp6  rtsan_diagnostics.cpp7  rtsan_flags.cpp8  rtsan_interceptors_posix.cpp9  rtsan_stats.cpp10  rtsan_suppressions.cpp11  )12 13set(RTSAN_PREINIT_SOURCES14  rtsan_preinit.cpp)15 16set(RTSAN_HEADERS17  rtsan.h18  rtsan_checks.inc19  rtsan_assertions.h20  rtsan_context.h21  rtsan_diagnostics.h22  rtsan_flags.h23  rtsan_flags.inc24  rtsan_stats.h25  rtsan_suppressions.h26  )27 28set(RTSAN_DEPS)29 30set(RTSAN_CFLAGS31  ${COMPILER_RT_COMMON_CFLAGS}32  ${COMPILER_RT_CXX_CFLAGS}33  -DSANITIZER_COMMON_NO_REDEFINE_BUILTINS)34set(RTSAN_LINK_FLAGS ${COMPILER_RT_COMMON_LINK_FLAGS})35set(RTSAN_DYNAMIC_LIBS36  ${COMPILER_RT_UNWINDER_LINK_LIBS}37  ${SANITIZER_CXX_ABI_LIBRARIES}38  ${SANITIZER_COMMON_LINK_LIBS})39 40append_rtti_flag(OFF RTSAN_CFLAGS)41 42if(APPLE)43  add_compiler_rt_object_libraries(RTRtsan44    OS ${SANITIZER_COMMON_SUPPORTED_OS}45    ARCHS ${RTSAN_SUPPORTED_ARCH}46    SOURCES ${RTSAN_CXX_SOURCES}47    ADDITIONAL_HEADERS ${RTSAN_HEADERS}48    CFLAGS ${RTSAN_CFLAGS}49    DEPS ${RTSAN_DEPS})50else()51  add_compiler_rt_object_libraries(RTRtsan52    ARCHS ${RTSAN_SUPPORTED_ARCH}53    SOURCES ${RTSAN_CXX_SOURCES}54    ADDITIONAL_HEADERS ${RTSAN_HEADERS}55    CFLAGS ${RTSAN_CFLAGS}56    DEPS ${RTSAN_DEPS})57  add_compiler_rt_object_libraries(RTRtsan_preinit58    ARCHS ${RTSAN_SUPPORTED_ARCH}59    SOURCES ${RTSAN_PREINIT_SOURCES}60    ADDITIONAL_HEADERS ${RTSAN_HEADERS}61    CFLAGS ${RTSAN_CFLAGS})62endif()63 64set(RTSAN_COMMON_RUNTIME_OBJECT_LIBS65  RTInterception66  RTSanitizerCommon67  RTSanitizerCommonLibc68  RTSanitizerCommonCoverage69  RTSanitizerCommonSymbolizer)70 71append_list_if(COMPILER_RT_HAS_LIBDL dl RTSAN_DYNAMIC_LIBS)72append_list_if(COMPILER_RT_HAS_LIBRT rt RTSAN_DYNAMIC_LIBS)73append_list_if(COMPILER_RT_HAS_LIBM m RTSAN_DYNAMIC_LIBS)74append_list_if(COMPILER_RT_HAS_LIBPTHREAD pthread RTSAN_DYNAMIC_LIBS)75append_list_if(COMPILER_RT_HAS_LIBLOG log RTSAN_DYNAMIC_LIBS)76 77add_compiler_rt_component(rtsan)78 79if (APPLE)80  add_weak_symbols("sanitizer_common" WEAK_SYMBOL_LINK_FLAGS)81  set(RTSAN_LINK_FLAGS ${RTSAN_LINK_FLAGS} ${WEAK_SYMBOL_LINK_FLAGS})82 83  add_compiler_rt_runtime(clang_rt.rtsan84    SHARED85    OS ${SANITIZER_COMMON_SUPPORTED_OS}86    ARCHS ${RTSAN_SUPPORTED_ARCH}87    OBJECT_LIBS RTRtsan88                ${RTSAN_COMMON_RUNTIME_OBJECT_LIBS}89    LINK_FLAGS ${RTSAN_LINK_FLAGS}90    LINK_LIBS ${RTSAN_DYNAMIC_LIBS}91    PARENT_TARGET rtsan)92else()93  add_compiler_rt_runtime(clang_rt.rtsan94    STATIC95    ARCHS ${RTSAN_SUPPORTED_ARCH}96    OBJECT_LIBS RTRtsan_preinit97                RTRtsan98                ${RTSAN_COMMON_RUNTIME_OBJECT_LIBS}99    LINK_FLAGS ${RTSAN_LINK_FLAGS}100    CFLAGS ${RTSAN_CFLAGS}101    PARENT_TARGET rtsan)102endif()103 104if(COMPILER_RT_INCLUDE_TESTS)105  add_subdirectory(tests)106endif()107