[trunk] Backout r1513 for now.
[openjpeg.git] / doc / CMakeLists.txt
index 08741c64c2eb7df0f0d59df67c63eb95c334c5f0..7169192751af6ef9b7503512010b52221496ecf9 100644 (file)
@@ -1,12 +1,26 @@
+# 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_EXECUTABLE)
-# The Doxyfile.dox is poorly defined and produce output
-# in the source dir
-ADD_CUSTOM_TARGET(doc
-  ${DOXYGEN}
-  ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.dox
-  WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
-)
-ENDIF(DOXYGEN_EXECUTABLE)
 
+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.cmake
+    ${CMAKE_BINARY_DIR}/doc/mainpage.dox @ONLY)
+
+  # Generate new target to build the html documentation
+  ADD_CUSTOM_TARGET(doc ALL
+    ${DOXYGEN_EXECUTABLE} ${CMAKE_BINARY_DIR}/doc/Doxyfile-html.dox)
+
+ELSE(DOXYGEN_FOUND)
+
+  MESSAGE(STATUS "Doxygen not found, we cannot generate the documentation")
+
+ENDIF(DOXYGEN_FOUND)