xref: /aosp_15_r20/external/compiler-rt/include/CMakeLists.txt (revision 7c3d14c8b49c529e04be81a3ce6f5cc23712e4c6)
1*7c3d14c8STreehugger Robotset(SANITIZER_HEADERS
2*7c3d14c8STreehugger Robot  sanitizer/allocator_interface.h
3*7c3d14c8STreehugger Robot  sanitizer/asan_interface.h
4*7c3d14c8STreehugger Robot  sanitizer/common_interface_defs.h
5*7c3d14c8STreehugger Robot  sanitizer/coverage_interface.h
6*7c3d14c8STreehugger Robot  sanitizer/dfsan_interface.h
7*7c3d14c8STreehugger Robot  sanitizer/esan_interface.h
8*7c3d14c8STreehugger Robot  sanitizer/linux_syscall_hooks.h
9*7c3d14c8STreehugger Robot  sanitizer/lsan_interface.h
10*7c3d14c8STreehugger Robot  sanitizer/msan_interface.h
11*7c3d14c8STreehugger Robot  sanitizer/tsan_interface_atomic.h)
12*7c3d14c8STreehugger Robot
13*7c3d14c8STreehugger Robotset(output_dir ${COMPILER_RT_OUTPUT_DIR}/include)
14*7c3d14c8STreehugger Robot
15*7c3d14c8STreehugger Robot# Copy compiler-rt headers to the build tree.
16*7c3d14c8STreehugger Robotset(out_files)
17*7c3d14c8STreehugger Robotforeach( f ${SANITIZER_HEADERS} )
18*7c3d14c8STreehugger Robot  set( src ${CMAKE_CURRENT_SOURCE_DIR}/${f} )
19*7c3d14c8STreehugger Robot  set( dst ${output_dir}/${f} )
20*7c3d14c8STreehugger Robot  add_custom_command(OUTPUT ${dst}
21*7c3d14c8STreehugger Robot    DEPENDS ${src}
22*7c3d14c8STreehugger Robot    COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst}
23*7c3d14c8STreehugger Robot    COMMENT "Copying compiler-rt's ${f}...")
24*7c3d14c8STreehugger Robot  list(APPEND out_files ${dst})
25*7c3d14c8STreehugger Robotendforeach( f )
26*7c3d14c8STreehugger Robot
27*7c3d14c8STreehugger Robotadd_custom_target(compiler-rt-headers ALL DEPENDS ${out_files})
28*7c3d14c8STreehugger Robotadd_dependencies(compiler-rt compiler-rt-headers)
29*7c3d14c8STreehugger Robotset_target_properties(compiler-rt-headers PROPERTIES FOLDER "Compiler-RT Misc")
30*7c3d14c8STreehugger Robot
31*7c3d14c8STreehugger Robot# Install sanitizer headers.
32*7c3d14c8STreehugger Robotinstall(FILES ${SANITIZER_HEADERS}
33*7c3d14c8STreehugger Robot  PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
34*7c3d14c8STreehugger Robot  DESTINATION ${COMPILER_RT_INSTALL_PATH}/include/sanitizer)
35