Ver código fonte

Centralize documentation generation logic

Camilla Berglund 9 anos atrás
pai
commit
22a09a53e6
3 arquivos alterados com 31 adições e 27 exclusões
  1. 0 8
      CMakeLists.txt
  2. 30 2
      docs/CMakeLists.txt
  3. 1 17
      docs/Doxyfile.in

+ 0 - 8
CMakeLists.txt

@@ -71,10 +71,6 @@ find_package(Vulkan)
 if (GLFW_BUILD_DOCS)
     set(DOXYGEN_SKIP_DOT TRUE)
     find_package(Doxygen)
-
-    if (GLFW_DOCUMENT_INTERNALS)
-        set(GLFW_INTERNAL_DOCS "${GLFW_SOURCE_DIR}/src/internal.h ${GLFW_SOURCE_DIR}/docs/internal.dox")
-    endif()
 endif()
 
 #--------------------------------------------------------------------
@@ -369,10 +365,6 @@ write_basic_package_version_file(src/glfw3ConfigVersion.cmake
                                  VERSION ${GLFW_VERSION_FULL}
                                  COMPATIBILITY SameMajorVersion)
 
-if (GLFW_BUILD_DOCS)
-    configure_file(docs/Doxyfile.in docs/Doxyfile @ONLY)
-endif()
-
 configure_file(src/glfw_config.h.in src/glfw_config.h @ONLY)
 
 configure_file(src/glfw3.pc.in src/glfw3.pc @ONLY)

+ 30 - 2
docs/CMakeLists.txt

@@ -1,5 +1,33 @@
 
-add_custom_target(docs ALL ${DOXYGEN_EXECUTABLE}
-                  WORKING_DIRECTORY ${GLFW_BINARY_DIR}/docs
+set(glfw_DOCS_SOURCES
+    "${GLFW_SOURCE_DIR}/include/GLFW/glfw3.h"
+    "${GLFW_SOURCE_DIR}/include/GLFW/glfw3native.h"
+    "${GLFW_SOURCE_DIR}/docs/main.dox"
+    "${GLFW_SOURCE_DIR}/docs/news.dox"
+    "${GLFW_SOURCE_DIR}/docs/moving.dox"
+    "${GLFW_SOURCE_DIR}/docs/quick.dox"
+    "${GLFW_SOURCE_DIR}/docs/compile.dox"
+    "${GLFW_SOURCE_DIR}/docs/build.dox"
+    "${GLFW_SOURCE_DIR}/docs/intro.dox"
+    "${GLFW_SOURCE_DIR}/docs/context.dox"
+    "${GLFW_SOURCE_DIR}/docs/monitor.dox"
+    "${GLFW_SOURCE_DIR}/docs/window.dox"
+    "${GLFW_SOURCE_DIR}/docs/input.dox"
+    "${GLFW_SOURCE_DIR}/docs/vulkan.dox"
+    "${GLFW_SOURCE_DIR}/docs/rift.dox"
+    "${GLFW_SOURCE_DIR}/docs/compat.dox")
+
+if (GLFW_DOCUMENT_INTERNALS)
+    list(APPEND glfw_DOCS_SOURCES "${GLFW_SOURCE_DIR}/src/internal.h")
+endif()
+
+foreach(arg ${glfw_DOCS_SOURCES})
+    set(GLFW_DOCS_SOURCES "${GLFW_DOCS_SOURCES} ${arg}")
+endforeach()
+
+configure_file(Doxyfile.in Doxyfile @ONLY)
+                     
+add_custom_target(docs ALL "${DOXYGEN_EXECUTABLE}"
+                  WORKING_DIRECTORY "${GLFW_BINARY_DIR}/docs"
                   COMMENT "Generating HTML documentation" VERBATIM)
 

+ 1 - 17
docs/Doxyfile.in

@@ -660,23 +660,7 @@ WARN_LOGFILE           = @GLFW_BINARY_DIR@/docs/warnings.txt
 # directories like "/usr/src/myproject". Separate the files or directories
 # with spaces.
 
-INPUT                  = @GLFW_INTERNAL_DOCS@                         \
-                         @GLFW_SOURCE_DIR@/include/GLFW/glfw3.h       \
-                         @GLFW_SOURCE_DIR@/include/GLFW/glfw3native.h \
-                         @GLFW_SOURCE_DIR@/docs/main.dox              \
-                         @GLFW_SOURCE_DIR@/docs/news.dox              \
-                         @GLFW_SOURCE_DIR@/docs/moving.dox            \
-                         @GLFW_SOURCE_DIR@/docs/quick.dox             \
-                         @GLFW_SOURCE_DIR@/docs/compile.dox           \
-                         @GLFW_SOURCE_DIR@/docs/build.dox             \
-                         @GLFW_SOURCE_DIR@/docs/intro.dox             \
-                         @GLFW_SOURCE_DIR@/docs/context.dox           \
-                         @GLFW_SOURCE_DIR@/docs/monitor.dox           \
-                         @GLFW_SOURCE_DIR@/docs/window.dox            \
-                         @GLFW_SOURCE_DIR@/docs/input.dox             \
-                         @GLFW_SOURCE_DIR@/docs/vulkan.dox            \
-                         @GLFW_SOURCE_DIR@/docs/rift.dox              \
-                         @GLFW_SOURCE_DIR@/docs/compat.dox
+INPUT                  = @GLFW_DOCS_SOURCES@
 
 # This tag can be used to specify the character encoding of the source files
 # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is