1find_program(DOXYGEN doxygen 2 PATHS "$ENV{ProgramFiles}/doxygen/bin" 3 "$ENV{ProgramFiles\(x86\)}/doxygen/bin") 4if (NOT DOXYGEN) 5 message(STATUS "Target 'doc' disabled (requires doxygen)") 6 return () 7endif () 8 9# Find the Python interpreter and set the PYTHON_EXECUTABLE variable. 10if (CMAKE_VERSION VERSION_LESS 3.12) 11 # This logic is deprecated in CMake after 3.12. 12 find_package(PythonInterp QUIET REQUIRED) 13else () 14 find_package(Python QUIET REQUIRED) 15 set(PYTHON_EXECUTABLE ${Python_EXECUTABLE}) 16endif () 17 18add_custom_target(doc 19 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/build.py 20 ${FMT_VERSION} 21 SOURCES api.rst syntax.rst usage.rst build.py conf.py _templates/layout.html) 22 23include(GNUInstallDirs) 24install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/ 25 DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/doc/fmt OPTIONAL 26 PATTERN ".doctrees" EXCLUDE) 27