diff --git a/cmake/rocprofiler_config_interfaces.cmake b/cmake/rocprofiler_config_interfaces.cmake index a01a6df27..47c6eaf7f 100644 --- a/cmake/rocprofiler_config_interfaces.cmake +++ b/cmake/rocprofiler_config_interfaces.cmake @@ -127,7 +127,14 @@ find_package( ${rocm_version_DIR} ${ROCM_PATH}) target_link_libraries(rocprofiler-sdk-hip INTERFACE hip::host) +# TODO: As of 2024/2/12, the hip::host target does not advertise its +# include directory but amdhip64 does. This ordinarily wouldn't be an issue +# because most folks just get it transitively, but here this is doing direct +# property copying to get usage requirements. +# The proper fix is for hip to export a hip::headers target with only usage +# requirements and depend on that. rocprofiler_config_nolink_target(rocprofiler-sdk-hip-nolink hip::host) +rocprofiler_config_nolink_target(rocprofiler-sdk-hip-nolink hip::amdhip64) # ----------------------------------------------------------------------------------------# # @@ -218,7 +225,9 @@ find_library( HINTS ${rocm_version_DIR} ${ROCM_PATH} PATHS ${rocm_version_DIR} ${ROCM_PATH}) -target_link_libraries(rocprofiler-sdk-hsa-aql INTERFACE ${hsa-amd-aqlprofile64_library}) +if(hsa-amd-aqlprofile64_library) + target_link_libraries(rocprofiler-sdk-hsa-aql INTERFACE ${hsa-amd-aqlprofile64_library}) +endif() # ----------------------------------------------------------------------------------------# # diff --git a/source/lib/common/container/CMakeLists.txt b/source/lib/common/container/CMakeLists.txt index f1ab95775..b152ebd35 100644 --- a/source/lib/common/container/CMakeLists.txt +++ b/source/lib/common/container/CMakeLists.txt @@ -9,3 +9,4 @@ set(containers_sources ring_buffer.cpp record_header_buffer.cpp ring_buffer.cpp target_sources(rocprofiler-sdk-common-library PRIVATE ${containers_sources} ${containers_headers}) +target_link_libraries(rocprofiler-sdk-common-library PRIVATE rocprofiler-sdk-hip-nolink) diff --git a/source/lib/output/CMakeLists.txt b/source/lib/output/CMakeLists.txt index ca655389e..fa2f3ad70 100644 --- a/source/lib/output/CMakeLists.txt +++ b/source/lib/output/CMakeLists.txt @@ -60,4 +60,5 @@ target_link_libraries( rocprofiler-sdk::rocprofiler-sdk-common-library rocprofiler-sdk::rocprofiler-sdk-cereal rocprofiler-sdk::rocprofiler-sdk-perfetto - rocprofiler-sdk::rocprofiler-sdk-otf2) + rocprofiler-sdk::rocprofiler-sdk-otf2 + rocprofiler-sdk-hip-nolink)