Add basic support for generating API documentation using Doxygen
If CMake is run and Doxygen is found, add a make target called "doc", which builds API documention in doc/html. This target is not included in the default "all" target, you have to explicitly run "make doc" to generate the documentation. If graphviz is installed, in particular, if the "dot" binary is found, doxygen is configured to generate various kinds of diagrams. Note that due to this, the first run of doxygen can take a while.master
parent
8066743a83
commit
83830e8682
|
@ -26,6 +26,11 @@ tags
|
|||
minetest.conf
|
||||
debug.txt
|
||||
|
||||
## Doxygen files
|
||||
doc/Doxyfile
|
||||
doc/html/
|
||||
doc/doxygen_*
|
||||
|
||||
## Build files
|
||||
CMakeFiles/*
|
||||
src/CMakeFiles/*
|
||||
|
@ -64,7 +69,7 @@ locale/
|
|||
*.layout
|
||||
*.o
|
||||
|
||||
#build variants
|
||||
## Build variants
|
||||
build/android/assets
|
||||
build/android/bin
|
||||
build/android/Debug
|
||||
|
@ -75,5 +80,3 @@ build/android/libs
|
|||
build/android/obj
|
||||
timestamp
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -229,3 +229,14 @@ endif()
|
|||
|
||||
include(CPack)
|
||||
|
||||
# Add a target to generate API documentation with Doxygen
|
||||
find_package(Doxygen)
|
||||
if(DOXYGEN_FOUND)
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doc/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile @ONLY)
|
||||
add_custom_target(doc
|
||||
${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc
|
||||
COMMENT "Generating API documentation with Doxygen" VERBATIM
|
||||
)
|
||||
endif(DOXYGEN_FOUND)
|
||||
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
DOXYFILE_ENCODING = UTF-8
|
||||
|
||||
PROJECT_NAME = "Minetest"
|
||||
PROJECT_NUMBER = @VERSION_STRING@
|
||||
|
||||
STRIP_FROM_PATH = @CMAKE_CURRENT_SOURCE_DIR@/src
|
||||
JAVADOC_AUTOBRIEF = YES
|
||||
EXTRACT_ALL = YES
|
||||
EXTRACT_PRIVATE = YES
|
||||
EXTRACT_STATIC = YES
|
||||
SORT_MEMBERS_CTORS_1ST = YES
|
||||
WARN_IF_UNDOCUMENTED = NO
|
||||
|
||||
INPUT = @CMAKE_CURRENT_SOURCE_DIR@/src/ \
|
||||
@CMAKE_CURRENT_SOURCE_DIR@/src/util \
|
||||
@CMAKE_CURRENT_SOURCE_DIR@/src/script \
|
||||
@CMAKE_CURRENT_SOURCE_DIR@/src/script/common \
|
||||
@CMAKE_CURRENT_SOURCE_DIR@/src/script/cpp_api \
|
||||
@CMAKE_CURRENT_SOURCE_DIR@/src/script/lua_api
|
||||
RECURSIVE = NO
|
||||
|
||||
REFERENCED_BY_RELATION = YES
|
||||
REFERENCES_RELATION = YES
|
||||
GENERATE_LATEX = NO
|
||||
PAPER_TYPE = a4wide
|
||||
|
||||
HAVE_DOT = @DOXYGEN_DOT_FOUND@
|
||||
CALL_GRAPH = YES
|
||||
CALLER_GRAPH = YES
|
||||
MAX_DOT_GRAPH_DEPTH = 3
|
||||
DOT_MULTI_TARGETS = YES
|
||||
|
Loading…
Reference in New Issue