1 add_custom_target(safestack)
3 set(SAFESTACK_SOURCES safestack.cc)
5 include_directories(..)
7 set(SAFESTACK_CFLAGS ${SANITIZER_COMMON_CFLAGS})
10 # Build universal binary on APPLE.
11 add_compiler_rt_runtime(clang_rt.safestack
14 ARCHS ${SAFESTACK_SUPPORTED_ARCH}
15 SOURCES ${SAFESTACK_SOURCES}
16 $<TARGET_OBJECTS:RTInterception.osx>
17 $<TARGET_OBJECTS:RTSanitizerCommon.osx>
18 $<TARGET_OBJECTS:RTSanitizerCommonNoLibc.osx>
19 CFLAGS ${SAFESTACK_CFLAGS}
20 PARENT_TARGET safestack)
22 # Otherwise, build separate libraries for each target.
23 foreach(arch ${SAFESTACK_SUPPORTED_ARCH})
24 add_compiler_rt_runtime(clang_rt.safestack
27 SOURCES ${SAFESTACK_SOURCES}
28 $<TARGET_OBJECTS:RTInterception.${arch}>
29 $<TARGET_OBJECTS:RTSanitizerCommon.${arch}>
30 $<TARGET_OBJECTS:RTSanitizerCommonNoLibc.${arch}>
31 CFLAGS ${SAFESTACK_CFLAGS}
32 PARENT_TARGET safestack)