cmake: Create cmake config file
Another cmake project like hsa-runtime could just use:
find_package(hsakmt REQUIRED 1.9.0)
Change-Id: Ia1c9a80ef287facdd607382d69649b0718d687b4
[ROCm/ROCR-Runtime commit: b8a1331763]
Αυτή η υποβολή περιλαμβάνεται σε:
υποβλήθηκε από
Kent Russell
γονέας
540fa908f6
υποβολή
4006e1f112
@@ -30,7 +30,7 @@ set ( HSAKMT_PACKAGE "hsakmt-roct" )
|
|||||||
set ( HSAKMT_COMPONENT "lib${HSAKMT}" )
|
set ( HSAKMT_COMPONENT "lib${HSAKMT}" )
|
||||||
set ( HSAKMT_TARGET "${HSAKMT}" )
|
set ( HSAKMT_TARGET "${HSAKMT}" )
|
||||||
|
|
||||||
project ( ${HSAKMT_TARGET} )
|
project ( ${HSAKMT_TARGET} VERSION 1.9.0)
|
||||||
|
|
||||||
## Set default module path if not already set
|
## Set default module path if not already set
|
||||||
if ( NOT DEFINED CMAKE_MODULE_PATH )
|
if ( NOT DEFINED CMAKE_MODULE_PATH )
|
||||||
@@ -133,6 +133,8 @@ add_custom_target ( build-dev
|
|||||||
-DCMAKE_INSTALL_PREFIX="${CMAKE_INSTALL_PREFIX}"
|
-DCMAKE_INSTALL_PREFIX="${CMAKE_INSTALL_PREFIX}"
|
||||||
-DCPACK_RPM_PACKAGE_REQUIRES="hsakmt-roct"
|
-DCPACK_RPM_PACKAGE_REQUIRES="hsakmt-roct"
|
||||||
-DCPACK_PACKAGING_INSTALL_PREFIX="${CPACK_PACKAGING_INSTALL_PREFIX}"
|
-DCPACK_PACKAGING_INSTALL_PREFIX="${CPACK_PACKAGING_INSTALL_PREFIX}"
|
||||||
|
-DVERSION="${BUILD_VERSION_STRING}"
|
||||||
|
-DHSAKMT_BIN_NAME="${HSAKMT}"
|
||||||
WORKING_DIRECTORY ${DEV_BUILD_DIR} )
|
WORKING_DIRECTORY ${DEV_BUILD_DIR} )
|
||||||
|
|
||||||
## Custom targets for the devel package
|
## Custom targets for the devel package
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
@PACKAGE_INIT@
|
||||||
|
|
||||||
|
set_and_check(HSAKMT_INCLUDE_DIR @PACKAGE_INCLUDE_INSTALL_DIR@)
|
||||||
|
set_and_check(HSAKMT_LIB_DIR @PACKAGE_LIB_INSTALL_DIR@)
|
||||||
|
|
||||||
|
set(HSAKMT_LIBRARY @PACKAGE_LIB_INSTALL_DIR@/@HSAKMT_LIBRARY_NAME@)
|
||||||
|
set(HSAKMT_LIBRARIES @PACKAGE_LIB_INSTALL_DIR@/@HSAKMT_LIBRARY_NAME@)
|
||||||
|
|
||||||
|
mark_as_advanced(HSAKMT_LIBRARY HSAKMT_INCLUDE_DIR)
|
||||||
@@ -67,4 +67,32 @@ set ( CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://github.com/RadeonOpenCompute/ROCT-T
|
|||||||
# RPM package specific variables
|
# RPM package specific variables
|
||||||
set ( CPACK_RPM_PACKAGE_DEPENDS "${HSAKMT_PACKAGE} = ${BUILD_VERSION_MAJOR}.${BUILD_VERSION_MINOR}.${BUILD_VERSION_PATCH}" )
|
set ( CPACK_RPM_PACKAGE_DEPENDS "${HSAKMT_PACKAGE} = ${BUILD_VERSION_MAJOR}.${BUILD_VERSION_MINOR}.${BUILD_VERSION_PATCH}" )
|
||||||
|
|
||||||
|
# Create cmake configuration files
|
||||||
|
include(CMakePackageConfigHelpers)
|
||||||
|
|
||||||
|
set(HSAKMT_LIBRARY_NAME ${CMAKE_SHARED_LIBRARY_PREFIX}${PROJECT_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX})
|
||||||
|
|
||||||
|
set(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} CACHE INTERNAL "")
|
||||||
|
set(LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR} CACHE INTERNAL "")
|
||||||
|
|
||||||
|
configure_package_config_file(${SOURCE_DIR}/${HSAKMT_BIN_NAME}-config.cmake.in
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/${HSAKMT_BIN_NAME}-config.cmake
|
||||||
|
PATH_VARS
|
||||||
|
INCLUDE_INSTALL_DIR LIB_INSTALL_DIR
|
||||||
|
INSTALL_DESTINATION
|
||||||
|
${CMAKE_INSTALL_LIBDIR}/cmake/${HSAKMT_BIN_NAME})
|
||||||
|
|
||||||
|
write_basic_package_version_file(${HSAKMT_BIN_NAME}-config-version.cmake
|
||||||
|
VERSION ${VERSION}
|
||||||
|
COMPATIBILITY
|
||||||
|
AnyNewerVersion)
|
||||||
|
|
||||||
|
install(FILES
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/${HSAKMT_BIN_NAME}-config.cmake
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/${HSAKMT_BIN_NAME}-config-version.cmake
|
||||||
|
DESTINATION
|
||||||
|
${CMAKE_INSTALL_LIBDIR}/cmake/${HSAKMT_BIN_NAME}
|
||||||
|
COMPONENT
|
||||||
|
devel)
|
||||||
|
|
||||||
include ( CPack )
|
include ( CPack )
|
||||||
|
|||||||
Αναφορά σε νέο ζήτημα
Block a user