52b3ee2dc6
Changed amdsmi_get_rocm_version() to be an API in the python library only. Updated usage and version detection Updated path detection of librocm-core.so Updated docs to reflect both amdsmi_get_rocm_version and amdsmi_get_lib_version() do not require initialization. Signed-off-by: Arif, Maisam <Maisam.Arif@amd.com>
85 строки
3.5 KiB
CMake
85 строки
3.5 KiB
CMake
message("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&")
|
|
message(" CMake AMDSMI CLI Install ")
|
|
message("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&")
|
|
|
|
|
|
# Set CLI Build Directory
|
|
set(PY_PACKAGE_DIR "amdsmi_cli")
|
|
set(PY_CLI_INSTALL_DIR
|
|
"${CMAKE_INSTALL_LIBEXECDIR}" CACHE STRING
|
|
"CLI tool installation directory")
|
|
|
|
# populate version string
|
|
configure_file(_version.py.in ${PY_PACKAGE_DIR}/_version.py @ONLY)
|
|
|
|
# hard-linking instead of copying avoids unnecessarry regeneration of packaged files
|
|
add_custom_command(
|
|
OUTPUT ${PY_PACKAGE_DIR}/__init__.py
|
|
${PY_PACKAGE_DIR}/amdsmi_cli.py
|
|
${PY_PACKAGE_DIR}/amdsmi_commands.py
|
|
${PY_PACKAGE_DIR}/amdsmi_helpers.py
|
|
${PY_PACKAGE_DIR}/amdsmi_init.py
|
|
${PY_PACKAGE_DIR}/amdsmi_logger.py
|
|
${PY_PACKAGE_DIR}/amdsmi_parser.py
|
|
${PY_PACKAGE_DIR}/amdsmi_cli_exceptions.py
|
|
${PY_PACKAGE_DIR}/BDF.py
|
|
${PY_PACKAGE_DIR}/README.md
|
|
${PY_PACKAGE_DIR}/Release_Notes.md
|
|
DEPENDS amdsmi_cli
|
|
COMMAND mkdir -p ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/__init__.py ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/amdsmi_cli.py ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/amdsmi_commands.py ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/amdsmi_helpers.py ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/amdsmi_init.py ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/amdsmi_logger.py ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/amdsmi_parser.py ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/amdsmi_cli_exceptions.py ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/BDF.py ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/README.md ${PY_PACKAGE_DIR}/
|
|
COMMAND ln -Pf ${CMAKE_CURRENT_SOURCE_DIR}/Release_Notes.md ${PY_PACKAGE_DIR}/)
|
|
|
|
# The CLI requires the python amdsmi wrapper to be installed
|
|
add_custom_target(
|
|
amdsmi_cli ALL
|
|
DEPENDS python_package
|
|
${PY_PACKAGE_DIR}/__init__.py
|
|
${PY_PACKAGE_DIR}/_version.py
|
|
${PY_PACKAGE_DIR}/amdsmi_cli.py
|
|
${PY_PACKAGE_DIR}/amdsmi_commands.py
|
|
${PY_PACKAGE_DIR}/amdsmi_helpers.py
|
|
${PY_PACKAGE_DIR}/amdsmi_init.py
|
|
${PY_PACKAGE_DIR}/amdsmi_logger.py
|
|
${PY_PACKAGE_DIR}/amdsmi_parser.py
|
|
${PY_PACKAGE_DIR}/amdsmi_cli_exceptions.py
|
|
${PY_PACKAGE_DIR}/BDF.py
|
|
${PY_PACKAGE_DIR}/README.md
|
|
${PY_PACKAGE_DIR}/Release_Notes.md)
|
|
|
|
install(
|
|
DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${PY_PACKAGE_DIR}
|
|
DESTINATION ${PY_CLI_INSTALL_DIR}
|
|
COMPONENT dev)
|
|
|
|
install(
|
|
PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${PY_PACKAGE_DIR}/amdsmi_cli.py
|
|
DESTINATION ${PY_CLI_INSTALL_DIR}/${PY_PACKAGE_DIR}
|
|
COMPONENT dev)
|
|
|
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bin)
|
|
|
|
# symlink amdsmi_cli.py to amd-smi
|
|
add_custom_target(
|
|
link_amdsmi_cli ALL
|
|
DEPENDS amdsmi_cli
|
|
BYPRODUCTS ${CMAKE_CURRENT_BINARY_DIR}/bin/amd-smi
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
|
COMMAND ${CMAKE_COMMAND} -E create_symlink
|
|
../${PY_CLI_INSTALL_DIR}/${PY_PACKAGE_DIR}/amdsmi_cli.py
|
|
${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}/amd-smi)
|
|
|
|
install(
|
|
FILES ${CMAKE_CURRENT_BINARY_DIR}/bin/amd-smi
|
|
DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
COMPONENT dev)
|