if(NOT ${BUILD_TESTS})
add_compile_options("-Werror")
endif()
add_library(core_obj OBJECT)
add_library(injection_test_obj OBJECT)
add_library(msopprof_injection SHARED)
add_library(mssanitizer_injection SHARED)
function(check_undefined_symbols SHARED_LIBRARY)
target_link_options(${SHARED_LIBRARY} PRIVATE "-Wl,-z,defs")
endfunction()
check_undefined_symbols(msopprof_injection)
check_undefined_symbols(mssanitizer_injection)
add_subdirectory(bind)
add_subdirectory(core)
add_subdirectory(utils)
add_subdirectory(runtime)
add_subdirectory(ascend_hal)
add_subdirectory(ascend_dump)
add_subdirectory(ascendcl)
add_subdirectory(acl_rt_impl)
add_subdirectory(profapi)
add_subdirectory(kernel_injection)
add_subdirectory(hccl)
add_subdirectory(camodel)
target_include_directories(core_obj PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${JSON_DIR} ${INJECTION_THIRDPARTY_INCLUDE})
target_include_directories(injection_test_obj PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${JSON_DIR} kernel_injection/include ${INJECTION_THIRDPARTY_INCLUDE})
target_include_directories(msopprof_injection PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${JSON_DIR} ${INJECTION_THIRDPARTY_INCLUDE})
target_include_directories(mssanitizer_injection PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${JSON_DIR} ${INJECTION_THIRDPARTY_INCLUDE})
target_include_directories(msbit PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${INJECTION_THIRDPARTY_INCLUDE})
add_dependencies(injection_test_obj core_obj)
add_dependencies(msopprof_injection core_obj)
add_dependencies(mssanitizer_injection core_obj)
target_link_libraries(core_obj PRIVATE
stdc++fs
pthread
dl
)
target_link_libraries(mssanitizer_injection PRIVATE
$<TARGET_OBJECTS:core_obj>
stdc++fs
pthread
dl
)
target_link_libraries(msopprof_injection PRIVATE
$<TARGET_OBJECTS:core_obj>
stdc++fs
pthread
dl
)
install(TARGETS mssanitizer_injection msopprof_injection
LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib64
)
add_subdirectory(tools)