CMAKE - Format with cmake-format
Change-Id: I08e71fc5060b1f6e0168225cc5fe66886c2044bd Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
이 커밋은 다음에 포함됨:
1 부모
f89beb90f5
커밋
fa8b89f4ae
18 파일이 변경됨
+515
-437
검색과 일치하는 파일 없음
+19
-19
@@ -37,7 +37,6 @@ message("---------SMI Lib Dir: " ${AMD_SMI_LIB_DIR})
|
||||
message("---------SMI Inc Dir: " ${AMD_SMI_INCLUDE_DIR})
|
||||
message("")
|
||||
|
||||
|
||||
set(COMMON_DIR "${PROJECT_SOURCE_DIR}/common")
|
||||
set(SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
set(INC_DIR "${PROJECT_SOURCE_DIR}/include/rdc_lib")
|
||||
@@ -89,37 +88,38 @@ add_subdirectory(rdc_modules/rdc_rvs)
|
||||
|
||||
# Create cmake target
|
||||
# Add all targets to the build-tree export set
|
||||
export(TARGETS ${BOOTSTRAP_LIB} ${RDC_LIB}
|
||||
FILE "${PROJECT_BINARY_DIR}/rdc_libs.cmake")
|
||||
export(TARGETS ${BOOTSTRAP_LIB} ${RDC_LIB} FILE "${PROJECT_BINARY_DIR}/rdc_libs.cmake")
|
||||
|
||||
## Add the install directives for the runtime library.
|
||||
install(TARGETS ${BOOTSTRAP_LIB} ${RDC_LIB}
|
||||
install(
|
||||
TARGETS ${BOOTSTRAP_LIB} ${RDC_LIB}
|
||||
EXPORT rdcTargets
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
COMPONENT ${CLIENT_COMPONENT})
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CLIENT_COMPONENT})
|
||||
|
||||
if(BUILD_STANDALONE)
|
||||
# add librdc_client.so
|
||||
add_subdirectory(rdc_client)
|
||||
install(TARGETS ${RDCCLIENT_LIB}
|
||||
install(
|
||||
TARGETS ${RDCCLIENT_LIB}
|
||||
EXPORT rdcTargets
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
COMPONENT ${CLIENT_COMPONENT})
|
||||
export(TARGETS ${RDCCLIENT_LIB}
|
||||
APPEND FILE "${PROJECT_BINARY_DIR}/rdc_libs.cmake")
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CLIENT_COMPONENT})
|
||||
export(
|
||||
TARGETS ${RDCCLIENT_LIB}
|
||||
APPEND
|
||||
FILE "${PROJECT_BINARY_DIR}/rdc_libs.cmake")
|
||||
endif()
|
||||
|
||||
# Add module directives if those exist
|
||||
if(RDC_LIB_MODULES)
|
||||
install(TARGETS ${RDC_LIB_MODULES}
|
||||
install(
|
||||
TARGETS ${RDC_LIB_MODULES}
|
||||
EXPORT rdcTargets
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${RDC}
|
||||
COMPONENT ${CLIENT_COMPONENT})
|
||||
set_target_properties(${RDC_LIB_MODULES}
|
||||
PROPERTIES INSTALL_RPATH "\$ORIGIN:\$ORIGIN/..")
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${RDC} COMPONENT ${CLIENT_COMPONENT})
|
||||
set_target_properties(${RDC_LIB_MODULES} PROPERTIES INSTALL_RPATH "\$ORIGIN:\$ORIGIN/..")
|
||||
endif()
|
||||
|
||||
install(FILES ${PROJECT_SOURCE_DIR}/include/rdc/rdc.h
|
||||
install(
|
||||
FILES ${PROJECT_SOURCE_DIR}/include/rdc/rdc.h
|
||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${RDC}
|
||||
COMPONENT ${CLIENT_COMPONENT})
|
||||
|
||||
@@ -127,14 +127,14 @@ install(FILES ${PROJECT_SOURCE_DIR}/include/rdc/rdc.h
|
||||
set(OLD_CMAKE_INSTALL_MESSAGE ${CMAKE_INSTALL_MESSAGE})
|
||||
set(CMAKE_INSTALL_MESSAGE NEVER)
|
||||
# Install the kernel files
|
||||
install(DIRECTORY ${SRC_DIR}/rdc_modules/kernels/hsaco
|
||||
install(
|
||||
DIRECTORY ${SRC_DIR}/rdc_modules/kernels/hsaco
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/${RDC}
|
||||
COMPONENT ${CLIENT_COMPONENT})
|
||||
# Restore printing verbosity
|
||||
set(CMAKE_INSTALL_MESSAGE ${OLD_CMAKE_INSTALL_MESSAGE})
|
||||
unset(OLD_CMAKE_INSTALL_MESSAGE)
|
||||
|
||||
|
||||
message("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&")
|
||||
message(" Finished Cmake RDC Lib ")
|
||||
message("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&")
|
||||
@@ -5,15 +5,14 @@ message("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&")
|
||||
set(SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
set(INC_DIR "${RDC_LIB_INC_DIR}")
|
||||
# need source dir for rocr
|
||||
set(BOOTSTRAP_LIB_SRC_DIR "${SRC_DIR}" PARENT_SCOPE)
|
||||
set(BOOTSTRAP_LIB_SRC_DIR
|
||||
"${SRC_DIR}"
|
||||
PARENT_SCOPE)
|
||||
|
||||
set(BOOTSTRAP_LIB_COMPONENT "lib${BOOTSTRAP_LIB}")
|
||||
set(BOOTSTRAP_LIB_SRC_LIST
|
||||
"${COMMON_DIR}/rdc_fields_supported.cc"
|
||||
"${SRC_DIR}/RdcBootStrap.cc"
|
||||
"${SRC_DIR}/RdcLibraryLoader.cc"
|
||||
"${SRC_DIR}/RdcLogger.cc"
|
||||
"${SRC_DIR}/RdcEntityCodec.cc")
|
||||
"${COMMON_DIR}/rdc_fields_supported.cc" "${SRC_DIR}/RdcBootStrap.cc"
|
||||
"${SRC_DIR}/RdcLibraryLoader.cc" "${SRC_DIR}/RdcLogger.cc" "${SRC_DIR}/RdcEntityCodec.cc")
|
||||
set(BOOTSTRAP_LIB_INC_LIST
|
||||
"${COMMON_DIR}/rdc_fields_supported.h"
|
||||
"${INC_DIR}/RdcHandler.h"
|
||||
@@ -26,29 +25,22 @@ message("BOOTSTRAP_LIB_INC_LIST=${BOOTSTRAP_LIB_INC_LIST}")
|
||||
|
||||
add_library(${BOOTSTRAP_LIB} SHARED ${BOOTSTRAP_LIB_SRC_LIST} ${BOOTSTRAP_LIB_INC_LIST})
|
||||
target_link_libraries(${BOOTSTRAP_LIB} pthread dl)
|
||||
target_include_directories(${BOOTSTRAP_LIB} PRIVATE
|
||||
"${PROJECT_SOURCE_DIR}"
|
||||
"${PROJECT_SOURCE_DIR}/include"
|
||||
"${COMMON_DIR}"
|
||||
"${AMD_SMI_INCLUDE_DIR}"
|
||||
"${ROCM_DIR}/include")
|
||||
target_include_directories(
|
||||
${BOOTSTRAP_LIB} PRIVATE "${PROJECT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/include"
|
||||
"${COMMON_DIR}" "${AMD_SMI_INCLUDE_DIR}" "${ROCM_DIR}/include")
|
||||
|
||||
target_include_directories(${BOOTSTRAP_LIB}
|
||||
PUBLIC
|
||||
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>
|
||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
|
||||
target_include_directories(${BOOTSTRAP_LIB} PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>
|
||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
|
||||
|
||||
# Set the VERSION and SOVERSION values
|
||||
set_property(TARGET ${BOOTSTRAP_LIB} PROPERTY
|
||||
SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${BOOTSTRAP_LIB} PROPERTY
|
||||
VERSION "${SO_VERSION_STRING}")
|
||||
set_target_properties(${BOOTSTRAP_LIB}
|
||||
PROPERTIES INSTALL_RPATH "\$ORIGIN:\$ORIGIN/rdc")
|
||||
set_property(TARGET ${BOOTSTRAP_LIB} PROPERTY SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${BOOTSTRAP_LIB} PROPERTY VERSION "${SO_VERSION_STRING}")
|
||||
set_target_properties(${BOOTSTRAP_LIB} PROPERTIES INSTALL_RPATH "\$ORIGIN:\$ORIGIN/rdc")
|
||||
|
||||
# If the library is a release, strip the target library
|
||||
if("${CMAKE_BUILD_TYPE}" STREQUAL Release)
|
||||
add_custom_command(
|
||||
TARGET ${BOOTSTRAP_LIB}
|
||||
POST_BUILD COMMAND ${CMAKE_STRIP} ${BOOTSTRAP_LIB_COMPONENT}.so)
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_STRIP} ${BOOTSTRAP_LIB_COMPONENT}.so)
|
||||
endif()
|
||||
+13
-14
@@ -6,7 +6,8 @@ set(SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
set(INC_DIR "${RDC_LIB_INC_DIR}")
|
||||
|
||||
set(RDC_LIB_COMPONENT "lib${RDC_LIB}")
|
||||
set(RDC_LIB_SRC_LIST ${RDC_LIB_SRC_LIST}
|
||||
set(RDC_LIB_SRC_LIST
|
||||
${RDC_LIB_SRC_LIST}
|
||||
"${COMMON_DIR}/rdc_capabilities.cc"
|
||||
"${COMMON_DIR}/rdc_fields_supported.cc"
|
||||
"${SRC_DIR}/RdcCacheManagerImpl.cc"
|
||||
@@ -32,7 +33,8 @@ set(RDC_LIB_SRC_LIST ${RDC_LIB_SRC_LIST}
|
||||
"${SRC_DIR}/SmiUtils.cc")
|
||||
|
||||
# TODO: remove all headers? Will just dir be ok after install?
|
||||
set(RDC_LIB_INC_LIST ${RDC_LIB_INC_LIST}
|
||||
set(RDC_LIB_INC_LIST
|
||||
${RDC_LIB_INC_LIST}
|
||||
"${COMMON_DIR}/rdc_capabilities.h"
|
||||
"${COMMON_DIR}/rdc_fields_supported.h"
|
||||
"${INC_DIR}/RdcCacheManager.h"
|
||||
@@ -68,25 +70,22 @@ message("RDC_LIB_INC_LIST=${RDC_LIB_INC_LIST}")
|
||||
|
||||
add_library(${RDC_LIB} SHARED ${RDC_LIB_SRC_LIST} ${RDC_LIB_INC_LIST})
|
||||
target_link_libraries(${RDC_LIB} ${BOOTSTRAP_LIB} pthread amd_smi cap)
|
||||
target_include_directories(${RDC_LIB} PRIVATE
|
||||
"${PROJECT_SOURCE_DIR}"
|
||||
"${PROJECT_SOURCE_DIR}/include"
|
||||
"${AMD_SMI_INCLUDE_DIR}")
|
||||
target_include_directories(
|
||||
${RDC_LIB} PRIVATE "${PROJECT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/include"
|
||||
"${AMD_SMI_INCLUDE_DIR}")
|
||||
|
||||
# Set the VERSION and SOVERSION values
|
||||
set_property(TARGET ${RDC_LIB} PROPERTY
|
||||
SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${RDC_LIB} PROPERTY
|
||||
VERSION "${SO_VERSION_STRING}")
|
||||
set_target_properties(${RDC_LIB}
|
||||
PROPERTIES INSTALL_RPATH "\$ORIGIN")
|
||||
set_property(TARGET ${RDC_LIB} PROPERTY SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${RDC_LIB} PROPERTY VERSION "${SO_VERSION_STRING}")
|
||||
set_target_properties(${RDC_LIB} PROPERTIES INSTALL_RPATH "\$ORIGIN")
|
||||
|
||||
# If the library is a release, strip the target library
|
||||
if("${CMAKE_BUILD_TYPE}" STREQUAL Release)
|
||||
add_custom_command(
|
||||
TARGET ${RDC_LIB}
|
||||
POST_BUILD COMMAND ${CMAKE_STRIP} ${RDC_LIB_COMPONENT}.so)
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_STRIP} ${RDC_LIB_COMPONENT}.so)
|
||||
endif()
|
||||
|
||||
# pass ROCM_DIR to compiler
|
||||
target_compile_definitions(${RDC_LIB} PRIVATE ROCM_DIR="${ROCM_DIR}")
|
||||
target_compile_definitions(${RDC_LIB} PRIVATE ROCM_DIR="${ROCM_DIR}")
|
||||
@@ -9,33 +9,26 @@ file(GLOB PROTOBUF_GENERATED_INCLUDES "${PROTOB_OUT_DIR}/*.h")
|
||||
file(GLOB PROTOBUF_GENERATED_SRCS "${PROTOB_OUT_DIR}/*.cc")
|
||||
|
||||
set(RDCCLIENT_LIB_COMPONENT "lib${RDCCLIENT_LIB}")
|
||||
set(RDCCLIENT_LIB_SRC_LIST
|
||||
"${SRC_DIR}/RdcStandaloneHandler.cc"
|
||||
"${PROTOBUF_GENERATED_SRCS}")
|
||||
set(RDCCLIENT_LIB_SRC_LIST "${SRC_DIR}/RdcStandaloneHandler.cc" "${PROTOBUF_GENERATED_SRCS}")
|
||||
|
||||
set(RDCCLIENT_LIB_INC_LIST "${PROJECT_SOURCE_DIR}/include/rdc/rdc.h"
|
||||
"${INC_DIR}/rdc_common.h"
|
||||
"${INC_DIR}/RdcHandler.h"
|
||||
"${INC_DIR}/impl/RdcStandaloneHandler.h")
|
||||
set(RDCCLIENT_LIB_INC_LIST "${PROJECT_SOURCE_DIR}/include/rdc/rdc.h" "${INC_DIR}/rdc_common.h"
|
||||
"${INC_DIR}/RdcHandler.h" "${INC_DIR}/impl/RdcStandaloneHandler.h")
|
||||
|
||||
message("RDCCLIENT_LIB_INC_LIST=${RDCCLIENT_LIB_INC_LIST}")
|
||||
|
||||
add_library(${RDCCLIENT_LIB} SHARED ${RDCCLIENT_LIB_SRC_LIST} ${RDCCLIENT_LIB_INC_LIST})
|
||||
target_link_libraries(${RDCCLIENT_LIB} ${BOOTSTRAP_LIB} pthread rt gRPC::grpc++ dl)
|
||||
target_include_directories(${RDCCLIENT_LIB} PRIVATE
|
||||
"${GRPC_ROOT}/include"
|
||||
"${PROJECT_SOURCE_DIR}"
|
||||
"${PROJECT_SOURCE_DIR}/include"
|
||||
"${PROTOB_OUT_DIR}")
|
||||
target_include_directories(
|
||||
${RDCCLIENT_LIB} PRIVATE "${GRPC_ROOT}/include" "${PROJECT_SOURCE_DIR}"
|
||||
"${PROJECT_SOURCE_DIR}/include" "${PROTOB_OUT_DIR}")
|
||||
|
||||
# Set the VERSION and SOVERSION values
|
||||
set_property(TARGET ${RDCCLIENT_LIB} PROPERTY
|
||||
SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${RDCCLIENT_LIB} PROPERTY
|
||||
VERSION "${SO_VERSION_STRING}")
|
||||
set_property(TARGET ${RDCCLIENT_LIB} PROPERTY SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${RDCCLIENT_LIB} PROPERTY VERSION "${SO_VERSION_STRING}")
|
||||
|
||||
if("${CMAKE_BUILD_TYPE}" STREQUAL Release)
|
||||
add_custom_command(
|
||||
TARGET ${RDCCLIENT_LIB}
|
||||
POST_BUILD COMMAND ${CMAKE_STRIP} ${RDCCLIENT_LIB_COMPONENT}.so)
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_STRIP} ${RDCCLIENT_LIB_COMPONENT}.so)
|
||||
endif()
|
||||
@@ -6,17 +6,11 @@ set(SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
set(INC_DIR "${PROJECT_SOURCE_DIR}/include/rdc_modules/rdc_rocp")
|
||||
|
||||
set(RDC_ROCP_LIB_COMPONENT "lib${RDC_ROCP_LIB}")
|
||||
set(RDC_ROCP_LIB_SRC_LIST
|
||||
"${BOOTSTRAP_LIB_SRC_DIR}/RdcLogger.cc"
|
||||
"${SRC_DIR}/RdcTelemetryLib.cc"
|
||||
"${SRC_DIR}/RdcRocpCounterSampler.cc"
|
||||
"${SRC_DIR}/RdcRocpBase.cc")
|
||||
set(RDC_ROCP_LIB_SRC_LIST "${BOOTSTRAP_LIB_SRC_DIR}/RdcLogger.cc" "${SRC_DIR}/RdcTelemetryLib.cc"
|
||||
"${SRC_DIR}/RdcRocpCounterSampler.cc" "${SRC_DIR}/RdcRocpBase.cc")
|
||||
set(RDC_ROCP_LIB_INC_LIST
|
||||
"${PROJECT_SOURCE_DIR}/include/rdc/rdc.h"
|
||||
"${RDC_LIB_INC_DIR}/RdcDiagnosticLibInterface.h"
|
||||
"${RDC_LIB_INC_DIR}/rdc_common.h"
|
||||
"${RDC_LIB_INC_DIR}/RdcLogger.h"
|
||||
"${INC_DIR}/RdcRocpBase.h"
|
||||
"${PROJECT_SOURCE_DIR}/include/rdc/rdc.h" "${RDC_LIB_INC_DIR}/RdcDiagnosticLibInterface.h"
|
||||
"${RDC_LIB_INC_DIR}/rdc_common.h" "${RDC_LIB_INC_DIR}/RdcLogger.h" "${INC_DIR}/RdcRocpBase.h"
|
||||
"${INC_DIR}/RdcRocpCounterSampler.h")
|
||||
|
||||
if(BUILD_PROFILER)
|
||||
@@ -24,39 +18,42 @@ if(BUILD_PROFILER)
|
||||
|
||||
message("RDC_ROCP_LIB_INC_LIST=${RDC_ROCP_LIB_INC_LIST}")
|
||||
|
||||
find_package(rocprofiler-sdk
|
||||
HINTS ${ROCM_DIR}/lib/cmake
|
||||
CONFIGURE REQUIRED)
|
||||
find_package(hsa-runtime64
|
||||
NAMES hsa-runtime64
|
||||
HINTS ${ROCM_DIR}/lib/cmake
|
||||
CONFIGURE REQUIRED)
|
||||
set(RDC_LIB_MODULES ${RDC_LIB_MODULES} ${RDC_ROCP_LIB} PARENT_SCOPE)
|
||||
find_package(rocprofiler-sdk HINTS ${ROCM_DIR}/lib/cmake CONFIGURE REQUIRED)
|
||||
find_package(
|
||||
hsa-runtime64
|
||||
NAMES
|
||||
hsa-runtime64
|
||||
HINTS
|
||||
${ROCM_DIR}/lib/cmake
|
||||
CONFIGURE
|
||||
REQUIRED)
|
||||
set(RDC_LIB_MODULES
|
||||
${RDC_LIB_MODULES} ${RDC_ROCP_LIB}
|
||||
PARENT_SCOPE)
|
||||
add_library(${RDC_ROCP_LIB} SHARED ${RDC_ROCP_LIB_SRC_LIST} ${RDC_ROCP_LIB_INC_LIST})
|
||||
target_link_libraries(${RDC_ROCP_LIB} PRIVATE hsa-runtime64::hsa-runtime64 rocprofiler-sdk::rocprofiler-sdk pthread dl)
|
||||
target_include_directories(${RDC_ROCP_LIB} PRIVATE
|
||||
"${PROJECT_SOURCE_DIR}"
|
||||
"${PROJECT_SOURCE_DIR}/include"
|
||||
"${COMMON_DIR}"
|
||||
"${AMD_SMI_INCLUDE_DIR}"
|
||||
"${ROCM_DIR}/include"
|
||||
"${ROCM_DIR}/include/hsa")
|
||||
target_link_libraries(${RDC_ROCP_LIB} PRIVATE hsa-runtime64::hsa-runtime64
|
||||
rocprofiler-sdk::rocprofiler-sdk pthread dl)
|
||||
target_include_directories(
|
||||
${RDC_ROCP_LIB}
|
||||
PRIVATE "${PROJECT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/include" "${COMMON_DIR}"
|
||||
"${AMD_SMI_INCLUDE_DIR}" "${ROCM_DIR}/include" "${ROCM_DIR}/include/hsa")
|
||||
|
||||
# let bootstrap find this module at build time
|
||||
# at install-time the directory structure is a lot simpler
|
||||
set_property(TARGET ${BOOTSTRAP_LIB} APPEND PROPERTY
|
||||
BUILD_RPATH "\$ORIGIN/../rdc_modules/${RDC_ROCP_LIB}")
|
||||
set_property(
|
||||
TARGET ${BOOTSTRAP_LIB}
|
||||
APPEND
|
||||
PROPERTY BUILD_RPATH "\$ORIGIN/../rdc_modules/${RDC_ROCP_LIB}")
|
||||
|
||||
# Set the VERSION and SOVERSION values
|
||||
set_property(TARGET ${RDC_ROCP_LIB} PROPERTY
|
||||
SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${RDC_ROCP_LIB} PROPERTY
|
||||
VERSION "${SO_VERSION_STRING}")
|
||||
set_property(TARGET ${RDC_ROCP_LIB} PROPERTY SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${RDC_ROCP_LIB} PROPERTY VERSION "${SO_VERSION_STRING}")
|
||||
|
||||
# If the library is a release, strip the target library
|
||||
if("${CMAKE_BUILD_TYPE}" STREQUAL Release)
|
||||
add_custom_command(
|
||||
TARGET ${RDC_ROCP_LIB}
|
||||
POST_BUILD COMMAND ${CMAKE_STRIP} ${RDC_ROCP_LIB_COMPONENT}.so)
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_STRIP} ${RDC_ROCP_LIB_COMPONENT}.so)
|
||||
endif()
|
||||
endif()
|
||||
@@ -34,35 +34,40 @@ if(BUILD_RUNTIME)
|
||||
|
||||
message("RDC_ROCR_LIB_INC_LIST=${RDC_ROCR_LIB_INC_LIST}")
|
||||
|
||||
find_package(hsa-runtime64
|
||||
NAMES hsa-runtime64
|
||||
HINTS ${ROCM_DIR}/lib/cmake
|
||||
CONFIGURE REQUIRED)
|
||||
set(RDC_LIB_MODULES ${RDC_LIB_MODULES} ${RDC_ROCR_LIB} PARENT_SCOPE)
|
||||
find_package(
|
||||
hsa-runtime64
|
||||
NAMES
|
||||
hsa-runtime64
|
||||
HINTS
|
||||
${ROCM_DIR}/lib/cmake
|
||||
CONFIGURE
|
||||
REQUIRED)
|
||||
set(RDC_LIB_MODULES
|
||||
${RDC_LIB_MODULES} ${RDC_ROCR_LIB}
|
||||
PARENT_SCOPE)
|
||||
add_library(${RDC_ROCR_LIB} SHARED ${RDC_ROCR_LIB_SRC_LIST} ${RDC_ROCR_LIB_INC_LIST})
|
||||
target_link_libraries(${RDC_ROCR_LIB} ${RDC_LIB} ${BOOTSTRAP_LIB} hsa-runtime64::hsa-runtime64 pthread dl)
|
||||
target_include_directories(${RDC_ROCR_LIB} PRIVATE
|
||||
"${PROJECT_SOURCE_DIR}"
|
||||
"${PROJECT_SOURCE_DIR}/include"
|
||||
"${COMMON_DIR}"
|
||||
"${AMD_SMI_INCLUDE_DIR}"
|
||||
"${ROCM_DIR}/include")
|
||||
target_link_libraries(${RDC_ROCR_LIB} ${RDC_LIB} ${BOOTSTRAP_LIB} hsa-runtime64::hsa-runtime64
|
||||
pthread dl)
|
||||
target_include_directories(
|
||||
${RDC_ROCR_LIB} PRIVATE "${PROJECT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/include"
|
||||
"${COMMON_DIR}" "${AMD_SMI_INCLUDE_DIR}" "${ROCM_DIR}/include")
|
||||
|
||||
# let bootstrap find this module at build time
|
||||
# at install-time the directory structure is a lot simpler
|
||||
set_property(TARGET ${BOOTSTRAP_LIB} APPEND PROPERTY
|
||||
BUILD_RPATH "\$ORIGIN/../rdc_modules/${RDC_ROCR_LIB}")
|
||||
set_property(
|
||||
TARGET ${BOOTSTRAP_LIB}
|
||||
APPEND
|
||||
PROPERTY BUILD_RPATH "\$ORIGIN/../rdc_modules/${RDC_ROCR_LIB}")
|
||||
|
||||
# Set the VERSION and SOVERSION values
|
||||
set_property(TARGET ${RDC_ROCR_LIB} PROPERTY
|
||||
SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${RDC_ROCR_LIB} PROPERTY
|
||||
VERSION "${SO_VERSION_STRING}")
|
||||
set_property(TARGET ${RDC_ROCR_LIB} PROPERTY SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${RDC_ROCR_LIB} PROPERTY VERSION "${SO_VERSION_STRING}")
|
||||
|
||||
# If the library is a release, strip the target library
|
||||
if("${CMAKE_BUILD_TYPE}" STREQUAL Release)
|
||||
add_custom_command(
|
||||
TARGET ${RDC_ROCR_LIB}
|
||||
POST_BUILD COMMAND ${CMAKE_STRIP} ${RDC_ROCR_LIB_COMPONENT}.so)
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_STRIP} ${RDC_ROCR_LIB_COMPONENT}.so)
|
||||
endif()
|
||||
endif()
|
||||
@@ -6,19 +6,12 @@ set(SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
set(INC_DIR "${PROJECT_SOURCE_DIR}/include/rdc_modules/rdc_rvs")
|
||||
|
||||
set(RDC_RVS_LIB_COMPONENT "lib${RDC_RVS_LIB}")
|
||||
set(RDC_RVS_LIB_SRC_LIST
|
||||
"${BOOTSTRAP_LIB_SRC_DIR}/RdcLogger.cc"
|
||||
"${SRC_DIR}/RvsBase.cc"
|
||||
"${SRC_DIR}/RdcDiagnosticLib.cc"
|
||||
)
|
||||
set(RDC_RVS_LIB_SRC_LIST "${BOOTSTRAP_LIB_SRC_DIR}/RdcLogger.cc" "${SRC_DIR}/RvsBase.cc"
|
||||
"${SRC_DIR}/RdcDiagnosticLib.cc")
|
||||
set(RDC_RVS_LIB_INC_LIST
|
||||
"${PROJECT_SOURCE_DIR}/include/rdc/rdc.h"
|
||||
"${RDC_LIB_INC_DIR}/RdcDiagnostic.h"
|
||||
"${RDC_LIB_INC_DIR}/RdcDiagnosticLibInterface.h"
|
||||
"${RDC_LIB_INC_DIR}/rdc_common.h"
|
||||
"${RDC_LIB_INC_DIR}/RdcLogger.h"
|
||||
"${INC_DIR}/RvsBase.h"
|
||||
)
|
||||
"${PROJECT_SOURCE_DIR}/include/rdc/rdc.h" "${RDC_LIB_INC_DIR}/RdcDiagnostic.h"
|
||||
"${RDC_LIB_INC_DIR}/RdcDiagnosticLibInterface.h" "${RDC_LIB_INC_DIR}/rdc_common.h"
|
||||
"${RDC_LIB_INC_DIR}/RdcLogger.h" "${INC_DIR}/RvsBase.h")
|
||||
|
||||
if(BUILD_RVS)
|
||||
message("Build librdc_rvs.so is enabled, make sure RVS is installed.")
|
||||
@@ -32,38 +25,43 @@ if(BUILD_RVS)
|
||||
list(APPEND CMAKE_PREFIX_PATH ${ROCM_DIR})
|
||||
find_package(rvs REQUIRED)
|
||||
|
||||
set(RDC_LIB_MODULES ${RDC_LIB_MODULES} ${RDC_RVS_LIB} PARENT_SCOPE)
|
||||
set(RDC_LIB_MODULES
|
||||
${RDC_LIB_MODULES} ${RDC_RVS_LIB}
|
||||
PARENT_SCOPE)
|
||||
add_library(${RDC_RVS_LIB} SHARED ${RDC_RVS_LIB_SRC_LIST} ${RDC_RVS_LIB_INC_LIST})
|
||||
target_link_libraries(${RDC_RVS_LIB} PRIVATE ${RDC_LIB} ${BOOTSTRAP_LIB} rvs::rvs pthread dl)
|
||||
target_include_directories(${RDC_RVS_LIB} PRIVATE
|
||||
"${PROJECT_SOURCE_DIR}"
|
||||
"${PROJECT_SOURCE_DIR}/include"
|
||||
"${COMMON_DIR}"
|
||||
"${AMD_SMI_INCLUDE_DIR}"
|
||||
"${ROCM_DIR}/include"
|
||||
"${ROCM_DIR}/include/hsa"
|
||||
"${ROCM_VALIDATION_SUITE_INCLUDE_DIR}")
|
||||
target_include_directories(
|
||||
${RDC_RVS_LIB}
|
||||
PRIVATE "${PROJECT_SOURCE_DIR}"
|
||||
"${PROJECT_SOURCE_DIR}/include"
|
||||
"${COMMON_DIR}"
|
||||
"${AMD_SMI_INCLUDE_DIR}"
|
||||
"${ROCM_DIR}/include"
|
||||
"${ROCM_DIR}/include/hsa"
|
||||
"${ROCM_VALIDATION_SUITE_INCLUDE_DIR}")
|
||||
|
||||
# let bootstrap find this module at build time
|
||||
# at install-time the directory structure is a lot simpler
|
||||
set_property(TARGET ${BOOTSTRAP_LIB} APPEND PROPERTY
|
||||
BUILD_RPATH "\$ORIGIN/../rdc_modules/${RDC_RVS_LIB}")
|
||||
set_property(
|
||||
TARGET ${BOOTSTRAP_LIB}
|
||||
APPEND
|
||||
PROPERTY BUILD_RPATH "\$ORIGIN/../rdc_modules/${RDC_RVS_LIB}")
|
||||
|
||||
# Set the VERSION and SOVERSION values
|
||||
set_property(TARGET ${RDC_RVS_LIB} PROPERTY
|
||||
SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${RDC_RVS_LIB} PROPERTY
|
||||
VERSION "${SO_VERSION_STRING}")
|
||||
set_property(TARGET ${RDC_RVS_LIB} PROPERTY SOVERSION "${VERSION_MAJOR}")
|
||||
set_property(TARGET ${RDC_RVS_LIB} PROPERTY VERSION "${SO_VERSION_STRING}")
|
||||
|
||||
# If the library is a release, strip the target library
|
||||
if("${CMAKE_BUILD_TYPE}" STREQUAL Release)
|
||||
add_custom_command(
|
||||
TARGET ${RDC_RVS_LIB}
|
||||
POST_BUILD COMMAND ${CMAKE_STRIP} ${RDC_RVS_LIB_COMPONENT}.so)
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_STRIP} ${RDC_RVS_LIB_COMPONENT}.so)
|
||||
endif()
|
||||
|
||||
# Install RVS config files into /opt/rocm/share/rdc/conf/rvs/
|
||||
install(DIRECTORY "${SRC_DIR}/conf/"
|
||||
install(
|
||||
DIRECTORY "${SRC_DIR}/conf/"
|
||||
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${RDC}/conf/rvs/
|
||||
COMPONENT ${SERVER_COMPONENT})
|
||||
endif()
|
||||
새 이슈에서 참조
사용자 차단