CMake config - updates and fixes (#532)
* CMake Config - updates and fixes
* Version - Updates
* Changelog - updates
* Update CHANGELOG.md
Co-authored-by: spolifroni-amd <Sandra.Polifroni@amd.com>
---------
Co-authored-by: spolifroni-amd <Sandra.Polifroni@amd.com>
[ROCm/rocdecode commit: 6b026af151]
This commit is contained in:
@@ -38,8 +38,8 @@ endif()
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED On)
|
||||
|
||||
# NOTE: Match version with api/rocdecode_version.h
|
||||
set(VERSION "0.11.1")
|
||||
# rocDecode Version
|
||||
set(VERSION "0.12.0")
|
||||
|
||||
# Set Project Version and Language
|
||||
project(rocdecode VERSION ${VERSION} LANGUAGES CXX)
|
||||
@@ -80,7 +80,7 @@ message("-- ${BoldBlue}rocDecode Version -- ${VERSION}${ColourReset}")
|
||||
message("-- ${BoldBlue}rocDecode Install Path -- ${CMAKE_INSTALL_PREFIX}${ColourReset}")
|
||||
|
||||
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
|
||||
list(APPEND CMAKE_PREFIX_PATH ${ROCM_PATH} ${ROCM_PATH}/hip)
|
||||
list(APPEND CMAKE_PREFIX_PATH ${ROCM_PATH}/lib/cmake)
|
||||
|
||||
# rocDecode Build Type
|
||||
if(NOT CMAKE_BUILD_TYPE)
|
||||
@@ -151,12 +151,18 @@ if(HIP_FOUND AND Libva_FOUND)
|
||||
ROCDECODE_ROCP_REG_VERSION_PATCH=${VERSION_PATCH})
|
||||
endif()
|
||||
|
||||
#Generate BUILD_INFO
|
||||
configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/api/rocdecode_version.h.in ${CMAKE_CURRENT_BINARY_DIR}/rocdecode_version.h @ONLY )
|
||||
install(TARGETS ${PROJECT_NAME} EXPORT rocdecode-targets DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT dev)
|
||||
|
||||
# install rocDecode libs -- {ROCM_PATH}/lib
|
||||
install(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT runtime NAMELINK_SKIP)
|
||||
install(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT dev NAMELINK_ONLY)
|
||||
install(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT asan)
|
||||
# install rocDecode include files -- {ROCM_PATH}/include/rocdecode
|
||||
install(FILES api/rocdecode.h api/rocparser.h api/roc_bitstream_reader.h api/rocdecode_version.h
|
||||
install(FILES api/rocdecode/rocdecode.h api/rocdecode/rocparser.h api/rocdecode/roc_bitstream_reader.h
|
||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} COMPONENT dev)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/rocdecode_version.h
|
||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} COMPONENT dev)
|
||||
# install rocDecode api trace include file -- {ROCM_PATH}/include/rocdecode/amd_detail
|
||||
install(FILES api/amd_detail/rocdecode_api_trace.h
|
||||
@@ -192,6 +198,49 @@ if(HIP_FOUND AND Libva_FOUND)
|
||||
message("-- ${White}AMD ROCm rocDecode -- CMAKE_CXX_FLAGS:${CMAKE_CXX_FLAGS}${ColourReset}")
|
||||
message("-- ${White}AMD ROCm rocDecode -- Link Libraries: ${LINK_LIBRARY_LIST}${ColourReset}")
|
||||
|
||||
## Cmake module config file configurations
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules/" CACHE INTERNAL "Default module path.")
|
||||
|
||||
## Export the package for use from the build-tree
|
||||
## (this registers the build-tree with a global CMake-registry)
|
||||
export(PACKAGE ${PROJECT_NAME})
|
||||
set(CONF_LIB_DIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
|
||||
|
||||
## Create the rocdecode-config.cmake and rocdecode-config-version files
|
||||
include(CMakePackageConfigHelpers)
|
||||
set(CONFIG_PACKAGE_INSTALL_DIR ${CONF_LIB_DIR}/cmake/${PROJECT_NAME})
|
||||
set(LIB_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}")
|
||||
set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR}")
|
||||
set(BIN_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}")
|
||||
|
||||
## Generate Config File for rocdecode
|
||||
configure_package_config_file(
|
||||
${CMAKE_MODULE_PATH}/${PROJECT_NAME}-config.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config.cmake
|
||||
INSTALL_DESTINATION ${CONFIG_PACKAGE_INSTALL_DIR}
|
||||
PATH_VARS LIB_INSTALL_DIR INCLUDE_INSTALL_DIR BIN_INSTALL_DIR
|
||||
)
|
||||
|
||||
## Generate config Version File for rocdecode
|
||||
write_basic_package_version_file(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config-version.cmake
|
||||
VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}"
|
||||
COMPATIBILITY SameMajorVersion
|
||||
)
|
||||
|
||||
## Install the rocdecode-config.cmake and rocdecode-config-version.cmake
|
||||
install(FILES
|
||||
"${PROJECT_BINARY_DIR}/${PROJECT_NAME}-config.cmake"
|
||||
"${PROJECT_BINARY_DIR}/${PROJECT_NAME}-config-version.cmake"
|
||||
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}"
|
||||
COMPONENT dev
|
||||
)
|
||||
|
||||
## Install the export set for use with the install-tree
|
||||
install(EXPORT rocdecode-targets DESTINATION
|
||||
"${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}" COMPONENT dev
|
||||
)
|
||||
|
||||
# make test with CTest
|
||||
enable_testing()
|
||||
include(CTest)
|
||||
|
||||
Reference in New Issue
Block a user