summaryrefslogtreecommitdiff
path: root/lib/interception/CMakeLists.txt
blob: cd9e6e75504fec75b4b1463a20c76422c945e576 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# Build for the runtime interception helper library.

set(INTERCEPTION_SOURCES
  interception_linux.cc
  interception_mac.cc
  interception_win.cc
  interception_type_test.cc
  )

include_directories(..)

set(INTERCEPTION_CFLAGS ${SANITIZER_COMMON_CFLAGS})

if(APPLE)
  # Build universal binary on APPLE.
  add_compiler_rt_osx_object_library(RTInterception
    ARCH ${SANITIZER_COMMON_SUPPORTED_ARCH}
    SOURCES ${INTERCEPTION_SOURCES}
    CFLAGS ${INTERCEPTION_CFLAGS})
elseif(ANDROID)
  add_library(RTInterception.arm.android OBJECT ${INTERCEPTION_SOURCES})
  set_target_compile_flags(RTInterception.arm.android
    ${INTERCEPTION_CFLAGS})
else()
  # Otherwise, build separate libraries for each target.
  foreach(arch ${SANITIZER_COMMON_SUPPORTED_ARCH})
    add_compiler_rt_object_library(RTInterception ${arch}
      SOURCES ${INTERCEPTION_SOURCES} CFLAGS ${INTERCEPTION_CFLAGS})
  endforeach()
endif()