rbdlsim/3rdparty/libccd/doc/CMakeLists.txt

40 lines
1.2 KiB
CMake

find_program(SPHINX_EXECUTABLE NAMES sphinx-build sphinx-build2)
if(NOT SPHINX_EXECUTABLE)
message(FATAL_ERROR "Could NOT find required executable sphinx-build")
endif()
add_custom_target(doc ALL)
set(CCD_DOCTREE_DIR "${CMAKE_CURRENT_BINARY_DIR}/.doctrees")
set(CCD_HTML_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/html")
add_custom_target(html COMMAND
"${SPHINX_EXECUTABLE}" -b html -d "${CCD_DOCTREE_DIR}" -q
"${CMAKE_CURRENT_SOURCE_DIR}" "${CCD_HTML_OUTPUT_DIR}")
add_dependencies(doc html)
install(DIRECTORY "${CCD_HTML_OUTPUT_DIR}"
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/doc/ccd")
set(CCD_DOC_ADDITIONAL_MAKE_CLEAN_FILES
"${CCD_DOCTREE_DIR}"
"${CCD_HTML_OUTPUT_DIR}")
if(NOT WIN32)
set(CCD_MAN_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/man")
add_custom_target(man COMMAND
"${SPHINX_EXECUTABLE}" -b man -d "${CCD_DOCTREE_DIR}" -q
"${CMAKE_CURRENT_SOURCE_DIR}" "${CCD_MAN_OUTPUT_DIR}")
add_dependencies(doc man)
install(DIRECTORY "${CCD_MAN_OUTPUT_DIR}/"
DESTINATION "${CMAKE_INSTALL_MANDIR}/man1")
list(APPEND CCD_DOC_ADDITIONAL_MAKE_CLEAN_FILES "${CCD_MAN_OUTPUT_DIR}")
endif()
set_directory_properties(PROPERTIES
ADDITIONAL_MAKE_CLEAN_FILES ${CCD_DOC_ADDITIONAL_MAKE_CLEAN_FILES})