SWDEV-321112: Use GNUInstallDirs
Use GNUInstallDirs variables to determine the location of BINDIR, LIBDIR, INCLUDEDIR, DATADIR, DOCDIR, LIBEXECDIR. Depends-On: Id11f862fb4bdb2425d68f455074172c38814ec92 Change-Id: I6459a4531ef899321a5e2d8050cf8b553e89a968
This commit is contained in:
+4
-3
@@ -24,6 +24,7 @@ cmake_minimum_required(VERSION 3.18.0)
|
||||
|
||||
project(roctracer VERSION 4.1.0)
|
||||
|
||||
include(GNUInstallDirs)
|
||||
# set default ROCM_PATH
|
||||
if(NOT DEFINED ROCM_PATH)
|
||||
set(ROCM_PATH "/opt/rocm" CACHE STRING "Default ROCM installation directory")
|
||||
@@ -89,7 +90,7 @@ endif()
|
||||
|
||||
## Install license file
|
||||
install(FILES ${CPACK_RESOURCE_FILE_LICENSE}
|
||||
DESTINATION share/doc/${PROJECT_NAME}
|
||||
DESTINATION ${CMAKE_INSTALL_DOCDIR}
|
||||
COMPONENT runtime)
|
||||
|
||||
## Debian package specific variables
|
||||
@@ -176,14 +177,14 @@ if(DOXYGEN_FOUND)
|
||||
|
||||
install(FILES
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/doc/latex/refman.pdf"
|
||||
DESTINATION share/doc/${PROJECT_NAME}
|
||||
DESTINATION ${CMAKE_INSTALL_DOCDIR}
|
||||
RENAME "roctracer.pdf"
|
||||
OPTIONAL
|
||||
COMPONENT runtime)
|
||||
|
||||
install(DIRECTORY
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/doc/html/"
|
||||
DESTINATION share/html/${PROJECT_NAME}
|
||||
DESTINATION ${CMAKE_INSTALL_DATADIR}/html/${PROJECT_NAME}
|
||||
OPTIONAL
|
||||
COMPONENT runtime)
|
||||
endif()
|
||||
|
||||
@@ -53,10 +53,10 @@ function(generate_wrapper_header)
|
||||
get_filename_component(file_name ${header_file} NAME)
|
||||
get_filename_component ( header_subdir ${header_file} DIRECTORY )
|
||||
if(header_subdir)
|
||||
set(include_statements "#include \"../../../include/${PROJECT_NAME}/${header_subdir}/${file_name}\"\n")
|
||||
set(include_statements "#include \"../../../${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}/${header_subdir}/${file_name}\"\n")
|
||||
configure_file(${PROJECT_SOURCE_DIR}/header_template.hpp.in ${ROCT_WRAPPER_INC_DIR}/${header_subdir}/${file_name})
|
||||
else()
|
||||
set(include_statements "#include \"../../include/${PROJECT_NAME}/${file_name}\"\n")
|
||||
set(include_statements "#include \"../../${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}/${file_name}\"\n")
|
||||
if(${file_name} STREQUAL "roctracer.h")
|
||||
set_file_contents(${PROJECT_SOURCE_DIR}/inc/${file_name})
|
||||
else()
|
||||
@@ -72,7 +72,7 @@ function(generate_wrapper_header)
|
||||
set(include_guard "ROCTRACER_WRAPPER_INCLUDE_${INC_GAURD_NAME}_H")
|
||||
#set include statements
|
||||
get_filename_component(file_name ${header_file} NAME)
|
||||
set(include_statements "#include \"../../include/${PROJECT_NAME}/${file_name}\"\n")
|
||||
set(include_statements "#include \"../../${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}/${file_name}\"\n")
|
||||
configure_file(${PROJECT_SOURCE_DIR}/header_template.hpp.in ${ROCT_WRAPPER_INC_DIR}/${file_name})
|
||||
|
||||
endforeach()
|
||||
@@ -94,7 +94,7 @@ function(create_library_symlink)
|
||||
add_custom_target(link_${file_name} ALL
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMAND ${CMAKE_COMMAND} -E create_symlink
|
||||
../../lib/${file_name} ${ROCT_WRAPPER_LIB_DIR}/${file_name})
|
||||
../../${CMAKE_INSTALL_LIBDIR}/${file_name} ${ROCT_WRAPPER_LIB_DIR}/${file_name})
|
||||
endforeach()
|
||||
#set softlink for roctracer/tool/libtracer_tool.so
|
||||
#The libray name is changed to libroctracer_tool.so with file reorg changes
|
||||
|
||||
@@ -105,7 +105,7 @@ set(PUBLIC_HEADERS
|
||||
foreach(header ${PUBLIC_HEADERS})
|
||||
get_filename_component(header_subdir ${header} DIRECTORY)
|
||||
install(FILES ${PROJECT_SOURCE_DIR}/inc/${header}
|
||||
DESTINATION include/${PROJECT_NAME}/${header_subdir}
|
||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}/${header_subdir}
|
||||
COMPONENT runtime)
|
||||
endforeach()
|
||||
|
||||
@@ -116,7 +116,7 @@ set(GENERATED_HEADERS
|
||||
|
||||
foreach(header ${GENERATED_HEADERS})
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${header}
|
||||
DESTINATION include/${PROJECT_NAME}
|
||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}
|
||||
COMPONENT runtime)
|
||||
endforeach()
|
||||
|
||||
@@ -148,7 +148,7 @@ target_link_options(roctracer PRIVATE -Wl,--version-script=${CMAKE_CURRENT_SOURC
|
||||
target_link_libraries(roctracer PRIVATE hsa-runtime64::hsa-runtime64 Threads::Threads dl)
|
||||
|
||||
install(TARGETS roctracer LIBRARY
|
||||
DESTINATION lib
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
COMPONENT runtime)
|
||||
|
||||
## Build the ROCTX library
|
||||
@@ -170,7 +170,7 @@ target_include_directories(roctx
|
||||
target_link_options(roctx PRIVATE -Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/roctx/exportmap -Wl,--no-undefined)
|
||||
|
||||
install(TARGETS roctx LIBRARY
|
||||
DESTINATION lib
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
COMPONENT runtime)
|
||||
|
||||
## Build the tracer_tool library
|
||||
@@ -194,12 +194,12 @@ target_include_directories(roctracer_tool
|
||||
target_link_libraries(roctracer_tool roctracer hsa-runtime64::hsa-runtime64 Threads::Threads atomic dl)
|
||||
target_link_options(roctracer_tool PRIVATE -Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/tracer_tool/exportmap -Wl,--no-undefined)
|
||||
|
||||
install(TARGETS roctracer_tool LIBRARY DESTINATION lib/${PROJECT_NAME} COMPONENT runtime)
|
||||
install(TARGETS roctracer_tool LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME} COMPONENT runtime)
|
||||
|
||||
add_library(hip_stats SHARED hip_stats/hip_stats.cpp)
|
||||
target_compile_definitions(hip_stats PRIVATE __HIP_PLATFORM_AMD__)
|
||||
target_link_libraries(hip_stats roctracer stdc++fs)
|
||||
install(TARGETS hip_stats LIBRARY DESTINATION lib/${PROJECT_NAME} COMPONENT runtime)
|
||||
install(TARGETS hip_stats LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME} COMPONENT runtime)
|
||||
|
||||
endif()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user