diff --git a/scripts/cmake/DocumentationSetup.cmake b/scripts/cmake/DocumentationSetup.cmake index 4fbf26436bdaa383b1859f991f2cfe06d47f204e..f07578fa294ff10b967b606b984f0b5877e61ddd 100644 --- a/scripts/cmake/DocumentationSetup.cmake +++ b/scripts/cmake/DocumentationSetup.cmake @@ -1,10 +1,13 @@ -IF(DOXYGEN_FOUND) +IF(DOXYGEN_EXECUTABLE) OPTION(DOCS_GENERATE_DIAGRAMS "Use the DOT tool to generate class diagrams." OFF) OPTION(DOCS_GENERATE_CALL_GRAPHS "Generate call dependency graphs." OFF) OPTION(DOCS_GENERATE_COLLABORATION_GRAPHS "Generate collaboration graphs." OFF) + IF(APPLE) + OPTION(DOCS_GENERATE_DOCSET "Generate Apple Docsets." OFF) + ENDIF() # APPLE - IF(NOT DOT_TOOL_PATH AND (DOCS_GENERATE_DIAGRAMS OR DOCS_GENERATE_CALL_GRAPHS OR + IF(NOT DOT_TOOL_PATH AND (DOCS_GENERATE_DIAGRAMS OR DOCS_GENERATE_CALL_GRAPHS OR DOCS_GENERATE_COLLABORATION_GRAPHS)) MESSAGE(WARNING "The DOT tool was not found but is needed for generating doxygen diagrams!") ENDIF() # DOT_TOOL_PATH AND (DOCS_GENERATE_DIAGRAMS OR ...) @@ -17,10 +20,22 @@ IF(DOXYGEN_FOUND) SET(DOCS_GENERATE_COLLABORATION_GRAPHS_STRING "YES" CACHE INTERNAL "") ENDIF() # DOCS_GENERATE_COLLABORATION_GRAPHS - GET_FILENAME_COMPONENT(DOT_TOOL_PATH_ONLY ${DOT_TOOL_PATH} PATH) + # GET_FILENAME_COMPONENT(DOT_TOOL_PATH_ONLY ${DOT_TOOL_PATH} PATH) CONFIGURE_FILE(scripts/docs/Doxyfile.in ${PROJECT_BINARY_DIR}/Doxyfile) ADD_CUSTOM_TARGET(doc ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/Doxyfile WORKING_DIRECTORY ${PROJECT_BINARY_DIR} COMMENT "Generating source code documentation with Doxygen." VERBATIM) -ENDIF() # DOXYGEN_FOUND \ No newline at end of file + SET(DOCS_GENERATE_TREEVIEW_STRING "YES" CACHE INTERNAL "") + SET(DOCS_DISABLE_INDEX_STRING "NO" CACHE INTERNAL "") + IF(DOCS_GENERATE_DOCSET) + SET(DOCS_GENERATE_TREEVIEW_STRING "NO" CACHE INTERNAL "" FORCE) + SET(DOCS_DISABLE_INDEX_STRING "YES" CACHE INTERNAL "" FORCE) + SET(DOCS_GENERATE_DOCSET_STRING "YES" CACHE INTERNAL "") + ADD_CUSTOM_COMMAND(TARGET doc POST_BUILD + COMMAND make WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/docs + COMMENT "Generating docset ...") + ENDIF() # DOCS_GENERATE_DOCSET + + +ENDIF() # DOXYGEN_EXECUTABLE \ No newline at end of file diff --git a/scripts/docs/Doxyfile.in b/scripts/docs/Doxyfile.in index ddf8b9db2be31ec9cc3f92065bed7cbf4e711a54..94958805606d12c22c9d0060dec480606343f939 100644 --- a/scripts/docs/Doxyfile.in +++ b/scripts/docs/Doxyfile.in @@ -817,7 +817,7 @@ HTML_DYNAMIC_SECTIONS = NO # it at startup. # See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information. -GENERATE_DOCSET = NO +GENERATE_DOCSET = ${DOCS_GENERATE_DOCSET_STRING} # When GENERATE_DOCSET tag is set to YES, this tag determines the name of the # feed. A documentation feed provides an umbrella under which multiple @@ -930,7 +930,7 @@ QHG_LOCATION = # top of each HTML page. The value NO (the default) enables the index and # the value YES disables it. -DISABLE_INDEX = NO +DISABLE_INDEX = ${DOCS_DISABLE_INDEX_STRING} # This tag can be used to set the number of enum values (range [1..20]) # that doxygen will group on one line in the generated HTML documentation. @@ -952,7 +952,7 @@ ENUM_VALUES_PER_LINE = 4 # releases of Doxygen, the values YES and NO are equivalent to FRAME and NONE # respectively. -GENERATE_TREEVIEW = YES +GENERATE_TREEVIEW = ${DOCS_GENERATE_TREEVIEW_STRING} # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be # used to set the initial width (in pixels) of the frame in which the tree