27 lines · plain
1foreach(arch ${SANITIZER_COMMON_SUPPORTED_ARCH})2 get_target_flags_for_arch(${arch} TARGET_CFLAGS)3 4 set(RTSanitizerCommonSymbolizerInternalDir5 "${CMAKE_CURRENT_BINARY_DIR}/RTSanitizerCommonSymbolizerInternal.${arch}")6 add_custom_command(OUTPUT ${RTSanitizerCommonSymbolizerInternalDir}7 COMMAND ${CMAKE_COMMAND} -E make_directory ${RTSanitizerCommonSymbolizerInternalDir})8 9 add_custom_command(OUTPUT RTSanitizerCommonSymbolizerInternal.${arch}.o10 DEPENDS ${RTSanitizerCommonSymbolizerInternalDir} 11 sanitizer_wrappers.cpp12 sanitizer_symbolize.cpp13 scripts/build_symbolizer.sh14 WORKING_DIRECTORY ${RTSanitizerCommonSymbolizerInternalDir}15 COMMAND FLAGS=${TARGET_CFLAGS}16 CLANG=${LLVM_TOOLS_BINARY_DIR}/clang17 ${CMAKE_CURRENT_SOURCE_DIR}/scripts/build_symbolizer.sh18 ${CMAKE_CURRENT_BINARY_DIR}/RTSanitizerCommonSymbolizerInternal.${arch}.o19 USES_TERMINAL)20 21 add_custom_target(RTSanitizerCommonSymbolizerInternalObj.${arch}22 DEPENDS RTSanitizerCommonSymbolizerInternal.${arch}.o)23 24 set_property(TARGET RTSanitizerCommonSymbolizerInternal.${arch}25 PROPERTY IMPORTED_OBJECTS ${CMAKE_CURRENT_BINARY_DIR}/RTSanitizerCommonSymbolizerInternal.${arch}.o)26endforeach()27