SWDEV-442738 - Static package generation for hip

Generate static package by combining binary and dev components.
Binary and dev component dependencies are added to the static package dependencies
Package name will have suffix static-dev/devel

Change-Id: I7eb187ceaf2af7dfaf6ff9f56de20dac72881a12
Этот коммит содержится в:
Ranjith Ramakrishnan
2024-03-26 15:03:32 -07:00
коммит произвёл Maneesh Gupta
родитель 7d901666b8
Коммит 2ce57184d3
3 изменённых файлов: 21 добавлений и 1 удалений
+1
Просмотреть файл
@@ -46,6 +46,7 @@ list(APPEND CMAKE_MODULE_PATH ${HIP_COMMON_DIR}/cmake)
option(__HIP_ENABLE_PCH "Enable/Disable pre-compiled hip headers" ON)
option(HIP_OFFICIAL_BUILD "Enable/Disable for mainline/staging builds" OFF)
option(FILE_REORG_BACKWARD_COMPATIBILITY "Enable File Reorg with backward compatibility" OFF)
option(BUILD_SHARED_LIBS "Build the shared library" ON)
if(MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zi")
+19 -1
Просмотреть файл
@@ -56,6 +56,8 @@ if(HIP_PLATFORM STREQUAL "amd" )
PATTERN ".hipInfo" EXCLUDE)
else()
install(PROGRAMS ${PROJECT_BINARY_DIR}/lib/libamdhip64.a DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT binary)
install(PROGRAMS ${PROJECT_BINARY_DIR}/lib/libhiprtc.a DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT binary)
install(PROGRAMS ${PROJECT_BINARY_DIR}/lib/libhiprtc-builtins.a DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT binary)
endif()#End BUILD_SHARED_LIBS
#TODO:This do not belong in BINARY package.
@@ -277,5 +279,21 @@ if(NOT ROCM_DEP_ROCMCORE)
string(REGEX REPLACE ",? ?rocm-core-asan" "" CPACK_RPM_ASAN_PACKAGE_REQUIRES ${CPACK_RPM_ASAN_PACKAGE_REQUIRES})
string(REGEX REPLACE ",? ?rocm-core-asan" "" CPACK_DEBIAN_ASAN_PACKAGE_DEPENDS ${CPACK_DEBIAN_ASAN_PACKAGE_DEPENDS})
endif()
# package name and dependencies for static package
if(NOT BUILD_SHARED_LIBS)
set(CPACK_RPM_STATIC_PACKAGE_NAME "hip-static-devel")
set(CPACK_DEBIAN_STATIC_PACKAGE_NAME "hip-static-dev")
set(CPACK_COMPONENT_STATIC_DESCRIPTION "HIP:Heterogenous-computing Interface for Portability [Static Libraries - AMD]")
set(CPACK_RPM_STATIC_PACKAGE_REQUIRES "${CPACK_RPM_DEV_PACKAGE_REQUIRES}")
string(APPEND CPACK_RPM_STATIC_PACKAGE_REQUIRES ", hsa-rocr-static-devel >= 1.3, rocminfo-static-devel, comgr-static-devel >= 2.0, rocm-llvm, hipcc-static-devel")
set(CPACK_DEBIAN_STATIC_PACKAGE_DEPENDS "${CPACK_DEBIAN_DEV_PACKAGE_DEPENDS}")
string(APPEND CPACK_DEBIAN_STATIC_PACKAGE_DEPENDS ", hsa-rocr-static-dev (>= 1.3), rocminfo-static-dev, comgr-static-dev (>= 3.0), rocm-llvm, hipcc-static-dev")
endif()
include(CPack)
#static package generation
# Group binary and dev component to single package
if(NOT BUILD_SHARED_LIBS)
cpack_add_component_group("static")
cpack_add_component( binary GROUP static )
cpack_add_component( dev GROUP static )
endif()
+1
Просмотреть файл
@@ -186,6 +186,7 @@ set_target_properties(hiprtc-builtins PROPERTIES
CXX_EXTENSIONS OFF
POSITION_INDEPENDENT_CODE ON
LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib
ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib
LINKER_LANGUAGE CXX
VERSION ${HIP_LIB_VERSION_STRING})