diff --git a/compiler-rt/include/CMakeLists.txt b/compiler-rt/include/CMakeLists.txt --- a/compiler-rt/include/CMakeLists.txt +++ b/compiler-rt/include/CMakeLists.txt @@ -5,7 +5,6 @@ sanitizer/common_interface_defs.h sanitizer/coverage_interface.h sanitizer/dfsan_interface.h - sanitizer/memprof_interface.h sanitizer/hwasan_interface.h sanitizer/linux_syscall_hooks.h sanitizer/lsan_interface.h @@ -21,6 +20,12 @@ ) endif(COMPILER_RT_BUILD_SANITIZERS) +if (COMPILER_RT_BUILD_MEMPROF) + set(MEMPROF_HEADERS + sanitizer/memprof_interface.h + ) +endif(COMPILER_RT_BUILD_MEMPROF) + if (COMPILER_RT_BUILD_XRAY) set(XRAY_HEADERS xray/xray_interface.h @@ -38,6 +43,7 @@ set(COMPILER_RT_HEADERS ${SANITIZER_HEADERS} ${FUZZER_HEADERS} + ${MEMPROF_HEADERS} ${XRAY_HEADERS} ${PROFILE_HEADERS}) diff --git a/compiler-rt/lib/CMakeLists.txt b/compiler-rt/lib/CMakeLists.txt --- a/compiler-rt/lib/CMakeLists.txt +++ b/compiler-rt/lib/CMakeLists.txt @@ -9,7 +9,7 @@ # #TODO: Refactor sanitizer_common into smaller pieces (e.g. flag parsing, utils). if (COMPILER_RT_HAS_SANITIZER_COMMON AND - (COMPILER_RT_BUILD_SANITIZERS OR COMPILER_RT_BUILD_XRAY)) + (COMPILER_RT_BUILD_SANITIZERS OR COMPILER_RT_BUILD_XRAY OR COMPILER_RT_BUILD_MEMPROF)) add_subdirectory(sanitizer_common) endif() @@ -34,9 +34,11 @@ endif() endfunction() -if(COMPILER_RT_BUILD_SANITIZERS) +if(COMPILER_RT_BUILD_SANITIZERS OR COMPILER_RT_BUILD_MEMPROF) compiler_rt_build_runtime(interception) +endif() +if(COMPILER_RT_BUILD_SANITIZERS) if(COMPILER_RT_HAS_SANITIZER_COMMON) add_subdirectory(stats) add_subdirectory(lsan) @@ -60,8 +62,7 @@ compiler_rt_build_runtime(fuzzer) endif() -if(COMPILER_RT_BUILD_MEMPROF AND COMPILER_RT_HAS_SANITIZER_COMMON AND - COMPILER_RT_BUILD_SANITIZERS) +if(COMPILER_RT_BUILD_MEMPROF AND COMPILER_RT_HAS_SANITIZER_COMMON) compiler_rt_build_runtime(memprof) endif()