Use doxygen to generate amdsmi API document

Change the CMake to generate the API document using doxygen.

Change-Id: I5c2fa661a66ac007f742bfbc15bdfd8d0098285d


[ROCm/amdsmi commit: 4a9bb197b2]
This commit is contained in:
Bill(Shuzhou) Liu
2022-10-12 10:55:23 -05:00
والد b546e272e0
کامیت c68caedcbd
2فایلهای تغییر یافته به همراه25 افزوده شده و 25 حذف شده
@@ -45,10 +45,10 @@ set(PKG_VERSION_PATCH 0)
set(PKG_VERSION_NUM_COMMIT 0)
## Define default variable and variables for the optional build target
## rocm_smi_lib-dev
## amd_smi_lib-dev
set(CMAKE_INSTALL_PREFIX "/opt/rocm" CACHE STRING "Default installation directory.")
set(COMMON_SRC_ROOT ${CMAKE_CURRENT_SOURCE_DIR} CACHE STRING "Location source code common root.")
set(ROCM_SMI_PACKAGE rocm-smi-lib)
set(ROCM_SMI_PACKAGE amd-smi-lib)
project(${AMD_SMI_LIBS_TARGET})
@@ -222,20 +222,20 @@ include(CMakePackageConfigHelpers)
configure_package_config_file(
amd_smi-config.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/rocm_smi-config.cmake
INSTALL_DESTINATION ${LIB_INSTALL_DIR}/cmake/rocm_smi
${CMAKE_CURRENT_BINARY_DIR}/amd_smi-config.cmake
INSTALL_DESTINATION ${LIB_INSTALL_DIR}/cmake/amd_smi
PATH_VARS LIB_INSTALL_DIR INCLUDE_INSTALL_DIR BIN_INSTALL_DIR
)
write_basic_package_version_file(
${CMAKE_CURRENT_BINARY_DIR}/rocm_smi-config-version.cmake
${CMAKE_CURRENT_BINARY_DIR}/amd_smi-config-version.cmake
VERSION "${AMD_SMI_LIBS_TARGET_VERSION_MAJOR}.${AMD_SMI_LIBS_TARGET_VERSION_MINOR}.${AMD_SMI_LIBS_TARGET_VERSION_PATCH}"
COMPATIBILITY SameMajorVersion
)
install(
FILES
${CMAKE_CURRENT_BINARY_DIR}/rocm_smi-config.cmake ${CMAKE_CURRENT_BINARY_DIR}/rocm_smi-config-version.cmake
${CMAKE_CURRENT_BINARY_DIR}/amd_smi-config.cmake ${CMAKE_CURRENT_BINARY_DIR}/amd_smi-config-version.cmake
DESTINATION
lib/cmake/${ROCM_SMI}
COMPONENT dev
@@ -248,8 +248,8 @@ export(TARGETS ${ROCM_SMI_TARGET}
# Export the package for use from the build-tree
# (this registers the build-tree with a global CMake-registry)
export(PACKAGE rocm_smi)
# Create the rocm_smiConfig.cmake and rocm_smiConfigVersion files
export(PACKAGE amd_smi)
# Create the amd_smiConfig.cmake and amd_smiConfigVersion files
# ... for the build tree
install(EXPORT rocm_smiTargets DESTINATION
"lib/cmake/${ROCM_SMI}" COMPONENT dev)
@@ -130,38 +130,38 @@ install(TARGETS ${ROCM_SMI_TARGET}
COMPONENT ${ROCM_SMI_COMPONENT})
install(FILES ${COMMON_SRC_ROOT}/include/amd_smi/amd_smi.h
DESTINATION include/rocm_smi)
DESTINATION include/amd_smi)
install(FILES ${COMMON_SRC_ROOT}/include/amd_smi/${ROCM_SMI_TARGET}Config.h
DESTINATION include/rocm_smi)
DESTINATION include/amd_smi)
install(FILES ${COMMON_SRC_ROOT}/rocm_smi/include/rocm_smi/kfd_ioctl.h
DESTINATION include/rocm_smi)
install(FILES ${COMMON_SRC_ROOT}/rocm_smi/python_smi_tools/rsmiBindings.py
DESTINATION libexec/${ROCM_SMI})
install(FILES ${COMMON_SRC_ROOT}/rocm_smi/python_smi_tools/rocm_smi.py
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ
GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
DESTINATION libexec/${ROCM_SMI})
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/bin/rocm-smi
DESTINATION bin)
DESTINATION include/amd_smi)
#install(FILES ${COMMON_SRC_ROOT}/rocm_smi/python_smi_tools/rsmiBindings.py
# DESTINATION libexec/${ROCM_SMI})
#install(FILES ${COMMON_SRC_ROOT}/rocm_smi/python_smi_tools/rocm_smi.py
# PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ
# GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
# DESTINATION libexec/${ROCM_SMI})
#install(FILES ${CMAKE_CURRENT_BINARY_DIR}/bin/rocm-smi
# DESTINATION bin)
# Generate Doxygen documentation
find_package(Doxygen)
find_package(LATEX COMPONENTS PDFLATEX)
if (DOXYGEN_FOUND AND LATEX_FOUND)
set (RSMI_MANUAL_NAME "ROCm_SMI_Manual")
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/docs/rocm_smi_doxygen.cfg
set (ASMI_MANUAL_NAME "AMD_SMI_Manual")
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../docs/amd_smi_doxygen.cfg
${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY)
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/latex/refman.tex
COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/docs/rocm_smi_doxygen.cfg
"${ROCM_INC_DIR}/rocm_smi.h"
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/../docs/amd_smi_doxygen.cfg
"${COMMON_SRC_ROOT}/include/amd_smi/amd_smi.h"
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/latex/refman.pdf
COMMAND make > /dev/null
COMMAND cp ${CMAKE_CURRENT_BINARY_DIR}/latex/refman.pdf
${CMAKE_CURRENT_SOURCE_DIR}/docs/${RSMI_MANUAL_NAME}_new.pdf
${CMAKE_CURRENT_SOURCE_DIR}/../docs/${ASMI_MANUAL_NAME}_new.pdf
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/latex/refman.tex
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/latex)
@@ -169,7 +169,7 @@ if (DOXYGEN_FOUND AND LATEX_FOUND)
add_dependencies(${ROCM_SMI_TARGET} docs)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/latex/refman.pdf
DESTINATION share/doc/${ROCM_SMI} RENAME ${RSMI_MANUAL_NAME}.pdf)
DESTINATION share/doc/${ROCM_SMI} RENAME ${ASMI_MANUAL_NAME}.pdf)
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../README.md
DESTINATION share/doc/${ROCM_SMI}/)
else()