diff options
Diffstat (limited to 'openjpeg/doc/CMakeLists.txt')
-rw-r--r-- | openjpeg/doc/CMakeLists.txt | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/openjpeg/doc/CMakeLists.txt b/openjpeg/doc/CMakeLists.txt new file mode 100644 index 000000000..d4f3ddbe6 --- /dev/null +++ b/openjpeg/doc/CMakeLists.txt @@ -0,0 +1,52 @@ +# Generate target to build the html documentation through CMake tool +# After having configured the project with the BUILD_DOC option you can run make doc +# to generate the html documentation in the doc/html repository of the build folder. + +# Try to find the doxygen tool +find_package(Doxygen) + +if(DOXYGEN_FOUND) + # Configure the doxygen config file with variable from CMake and move it + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.dox.cmake.in + ${CMAKE_BINARY_DIR}/doc/Doxyfile-html.dox @ONLY) + + # Configure the html mainpage file of the doxygen documentation with variable + # from CMake and move it + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/mainpage.dox.in + ${CMAKE_BINARY_DIR}/doc/mainpage.dox @ONLY) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/openjpip.dox.in + ${CMAKE_BINARY_DIR}/doc/openjpip.dox @ONLY) + # copy png file to make local (binary tree) documentation valid: + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/jpip_architect.png + ${CMAKE_BINARY_DIR}/doc/html/jpip_architect.png COPYONLY) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/jpip_protocol.png + ${CMAKE_BINARY_DIR}/doc/html/jpip_protocol.png COPYONLY) + + file(GLOB headers + ${OPENJPEG_SOURCE_DIR}/src/lib/openjp2/*.h + ${OPENJPEG_SOURCE_DIR}/src/lib/openjp2/*.c + ${OPENJPEG_SOURCE_DIR}/src/lib/openjpip/*.h + ${OPENJPEG_SOURCE_DIR}/src/lib/openjpip/*.c + ) + # Generate new target to build the html documentation + add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/html/index.html + COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_BINARY_DIR}/doc/Doxyfile-html.dox + DEPENDS ${CMAKE_BINARY_DIR}/doc/Doxyfile-html.dox + ${CMAKE_BINARY_DIR}/doc/mainpage.dox + ${CMAKE_BINARY_DIR}/doc/openjpip.dox + ${headers} + ) + add_custom_target(doc ALL + DEPENDS ${CMAKE_BINARY_DIR}/doc/html/index.html + COMMENT "Building doxygen documentation" + ) + + # install HTML documentation (install png files too): + install(DIRECTORY ${CMAKE_BINARY_DIR}/doc/html + DESTINATION share/doc + PATTERN ".svn" EXCLUDE + ) +else() + message(STATUS "Doxygen not found, we cannot generate the documentation") +endif() |