SWDEV-321112: Use GNUInstallDirs

Use GNUInstallDirs variables to determine the location of BINDIR,
LIBDIR, INCLUDEDIR, DOCDIR, LIBEXECDIR and SYSCONFDIR.

Note that CMAKE_INSTALL_LIBDIR is overriden, since the default for RHEL
is lib64, but ROCm packaging wants it to be lib always. Distros or users
can easily override this.
Project name changed from rocprofiler64 to rocprofiler,since CMAKE_INSTALL_DOCDIR uses the project name

Change-Id: Iff2622b4bfc38ce5caea270e6e44ba74485cb9e4


[ROCm/rocprofiler commit: b24e05e138]
Этот коммит содержится в:
Ranjith Ramakrishnan
2022-05-17 22:15:56 -07:00
родитель d4241d5241
Коммит ee6ea623e2
6 изменённых файлов: 22 добавлений и 19 удалений
+12 -9
Просмотреть файл
@@ -29,8 +29,11 @@ set ( CMAKE_VERBOSE_MAKEFILE TRUE CACHE BOOL "Verbose Output" FORCE )
set ( ROCPROFILER_NAME "rocprofiler" )
set ( ROCPROFILER_TARGET "${ROCPROFILER_NAME}64" )
set ( ROCPROFILER_LIBRARY "lib${ROCPROFILER_TARGET}" )
project ( ${ROCPROFILER_TARGET} )
project ( ${ROCPROFILER_NAME} )
# Set default libdir to be "lib" for ROCm
set(CMAKE_INSTALL_LIBDIR "lib" CACHE STRING "Library install directory")
include(GNUInstallDirs)
## Adding default path cmake modules
list ( APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules" )
## Include common cmake modules
@@ -130,15 +133,15 @@ message ( "CPack-install-prefix: ${CPACK_PACKAGING_INSTALL_PREFIX}" )
message ( "-----------Dest-name: ${DEST_NAME}" )
# Install header and library
install ( TARGETS ${ROCPROFILER_TARGET} LIBRARY DESTINATION lib )
install ( TARGETS ${ROCPROFILER_TARGET} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} )
install ( FILES
${CMAKE_CURRENT_SOURCE_DIR}/inc/rocprofiler.h
${CMAKE_CURRENT_SOURCE_DIR}/src/core/activity.h
DESTINATION include/${DEST_NAME} )
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${DEST_NAME} )
# rpl_run.sh tblextr.py txt2xml.sh
install ( FILES
${CMAKE_CURRENT_SOURCE_DIR}/bin/rpl_run.sh
DESTINATION bin
DESTINATION ${CMAKE_INSTALL_BINDIR}
PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
RENAME rocprof )
@@ -150,16 +153,16 @@ install ( FILES
${CMAKE_CURRENT_SOURCE_DIR}/bin/dform.py
${CMAKE_CURRENT_SOURCE_DIR}/bin/mem_manager.py
${CMAKE_CURRENT_SOURCE_DIR}/bin/sqlitedb.py
DESTINATION libexec/${DEST_NAME}
DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/${DEST_NAME}
PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE )
# gfx_metrics.xml metrics.xml
install ( FILES
${CMAKE_CURRENT_SOURCE_DIR}/test/tool/metrics.xml
${CMAKE_CURRENT_SOURCE_DIR}/test/tool/gfx_metrics.xml
DESTINATION lib/${DEST_NAME} )
DESTINATION ${CMAKE_INSTALL_LIBDIR}/${DEST_NAME} )
# librocprof-tool.so
install ( FILES ${PROJECT_BINARY_DIR}/test/librocprof-tool.so DESTINATION lib/${DEST_NAME} )
install ( FILES ${PROJECT_BINARY_DIR}/test/rocprof-ctrl DESTINATION lib/${DEST_NAME}
install ( FILES ${PROJECT_BINARY_DIR}/test/librocprof-tool.so DESTINATION ${CMAKE_INSTALL_LIBDIR}/${DEST_NAME} )
install ( FILES ${PROJECT_BINARY_DIR}/test/rocprof-ctrl DESTINATION ${CMAKE_INSTALL_LIBDIR}/${DEST_NAME}
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE )
# File reorg Backward compatibility
@@ -182,7 +185,7 @@ set ( CPACK_PACKAGE_DESCRIPTION_SUMMARY "ROCPROFILER library for AMD HSA runtime
set ( CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE" )
# Install license file
install(FILES ${CPACK_RESOURCE_FILE_LICENSE} DESTINATION share/doc/${CPACK_PACKAGE_NAME})
install(FILES ${CPACK_RESOURCE_FILE_LICENSE} DESTINATION ${CMAKE_INSTALL_DOCDIR})
if ( DEFINED ENV{ROCM_LIBPATCH_VERSION} )
set ( CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION}.$ENV{ROCM_LIBPATCH_VERSION}" )
+1 -1
Просмотреть файл
@@ -5,7 +5,7 @@ set -e
do_ldconfig() {
# left-hand term originates from ENABLE_LDCONFIG = ON/OFF at package build
if [ "@ENABLE_LDCONFIG@" == "ON" ]; then
echo @CPACK_PACKAGING_INSTALL_PREFIX@/lib > /etc/ld.so.conf.d/librocprofiler64.conf
echo @CPACK_PACKAGING_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ > /@CMAKE_INSTALL_SYSCONFDIR@/ld.so.conf.d/librocprofiler64.conf
ldconfig
fi
}
+1 -1
Просмотреть файл
@@ -5,7 +5,7 @@ set -e
rm_ldconfig() {
# left-hand term originates from ENABLE_LDCONFIG = ON/OFF at package build
if [ "@ENABLE_LDCONFIG@" == "ON" ]; then
rm -f /etc/ld.so.conf.d/librocprofiler64.conf
rm -f /@CMAKE_INSTALL_SYSCONFDIR@/ld.so.conf.d/librocprofiler64.conf
ldconfig
fi
}
+1 -1
Просмотреть файл
@@ -1,5 +1,5 @@
# left-hand term originates from ENABLE_LDCONFIG = ON/OFF at package build
if [ "@ENABLE_LDCONFIG@" == "ON" ]; then
echo @CPACK_PACKAGING_INSTALL_PREFIX@/lib > /etc/ld.so.conf.d/librocprofiler64.conf
echo @CPACK_PACKAGING_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ > /@CMAKE_INSTALL_SYSCONFDIR@/ld.so.conf.d/librocprofiler64.conf
ldconfig
fi
+1 -1
Просмотреть файл
@@ -1,4 +1,4 @@
# left-hand term originates from ENABLE_LDCONFIG = ON/OFF at package build
if [ "@ENABLE_LDCONFIG@" == "ON" ]; then
rm -f /etc/ld.so.conf.d/librocprofiler64.conf && ldconfig
rm -f /@CMAKE_INSTALL_SYSCONFDIR@/ld.so.conf.d/librocprofiler64.conf && ldconfig
fi
+6 -6
Просмотреть файл
@@ -64,7 +64,7 @@ function(generate_wrapper_header)
set(include_guard "${include_guard}ROCPROF_WRAPPER_INCLUDE_${INC_GAURD_NAME}_H")
#set include statement
get_filename_component(file_name ${header_file} NAME)
set(include_statements "${include_statements}#include \"../../include/${ROCPROFILER_NAME}/${file_name}\"\n")
set(include_statements "${include_statements}#include \"../../${CMAKE_INSTALL_INCLUDEDIR}/${ROCPROFILER_NAME}/${file_name}\"\n")
configure_file(${ROCPROF_WRAPPER_DIR}/header.hpp.in ${ROCPROF_WRAPPER_INC_DIR}/${file_name})
unset(include_guard)
unset(include_statements)
@@ -76,7 +76,7 @@ function(generate_wrapper_header)
get_filename_component(INC_GAURD_NAME ${file_name} NAME_WE)
string(TOUPPER ${INC_GAURD_NAME} INC_GAURD_NAME)
set(include_guard "${include_guard}ROCPROF_WRAPPER_INCLUDE_${INC_GAURD_NAME}_H")
set(include_statements "${include_statements}#include \"../../include/${ROCPROFILER_NAME}/${file_name}\"\n")
set(include_statements "${include_statements}#include \"../../${CMAKE_INSTALL_INCLUDEDIR}/${ROCPROFILER_NAME}/${file_name}\"\n")
configure_file(${ROCPROF_WRAPPER_DIR}/header.hpp.in ${ROCPROF_WRAPPER_INC_DIR}/${file_name})
endfunction()
@@ -88,7 +88,7 @@ function(create_binary_symlink)
add_custom_target(link_${file_name} ALL
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMAND ${CMAKE_COMMAND} -E create_symlink
../../bin/${file_name} ${ROCPROF_WRAPPER_BIN_DIR}/${file_name})
../../${CMAKE_INSTALL_BINDIR}/${file_name} ${ROCPROF_WRAPPER_BIN_DIR}/${file_name})
endfunction()
@@ -104,7 +104,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} ${ROCPROF_WRAPPER_LIB_DIR}/${file_name})
../../${CMAKE_INSTALL_LIBDIR}/${file_name} ${ROCPROF_WRAPPER_LIB_DIR}/${file_name})
endforeach()
#create symlink to rocprofiler/tool/libtool.so
# With File reorg,tool renamed to rocprof-tool
@@ -114,7 +114,7 @@ function(create_library_symlink)
add_custom_target(link_${LIB_TOOL} ALL
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMAND ${CMAKE_COMMAND} -E create_symlink
../../lib/${ROCPROFILER_NAME}/${LIB_ROCPROFTOOL} ${ROCPROF_WRAPPER_TOOL_DIR}/${LIB_TOOL})
../../${CMAKE_INSTALL_LIBDIR}/${ROCPROFILER_NAME}/${LIB_ROCPROFTOOL} ${ROCPROF_WRAPPER_TOOL_DIR}/${LIB_TOOL})
#create symlink to test binary
#since its saved in lib folder , the code for the same is added here
# With File reorg ,binary name changed from ctrl to rocprof-ctrl
@@ -123,7 +123,7 @@ function(create_library_symlink)
add_custom_target(link_${TEST_CTRL} ALL
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMAND ${CMAKE_COMMAND} -E create_symlink
../../lib/${ROCPROFILER_NAME}/${TEST_ROCPROFCTRL} ${ROCPROF_WRAPPER_TOOL_DIR}/${TEST_CTRL})
../../${CMAKE_INSTALL_LIBDIR}/${ROCPROFILER_NAME}/${TEST_ROCPROFCTRL} ${ROCPROF_WRAPPER_TOOL_DIR}/${TEST_CTRL})
endfunction()
#Creater a template for header file