1*3cab2bb3Spatrickadd_compiler_rt_component(safestack) 2*3cab2bb3Spatrick 3*3cab2bb3Spatrickset(SAFESTACK_SOURCES 4*3cab2bb3Spatrick safestack.cpp 5*3cab2bb3Spatrick ) 6*3cab2bb3Spatrick 7*3cab2bb3Spatrickinclude_directories(..) 8*3cab2bb3Spatrick 9*3cab2bb3Spatrickset(SAFESTACK_CFLAGS ${SANITIZER_COMMON_CFLAGS}) 10*3cab2bb3Spatrick 11*3cab2bb3Spatrickforeach(arch ${SAFESTACK_SUPPORTED_ARCH}) 12*3cab2bb3Spatrick add_compiler_rt_runtime(clang_rt.safestack 13*3cab2bb3Spatrick STATIC 14*3cab2bb3Spatrick ARCHS ${arch} 15*3cab2bb3Spatrick SOURCES ${SAFESTACK_SOURCES} 16*3cab2bb3Spatrick $<TARGET_OBJECTS:RTInterception.${arch}> 17*3cab2bb3Spatrick CFLAGS ${SAFESTACK_CFLAGS} 18*3cab2bb3Spatrick PARENT_TARGET safestack) 19*3cab2bb3Spatrickendforeach() 20