Added Doxygen support for limited documentation.
authorTeemu Murtola <teemu.murtola@cbr.su.se>
Wed, 12 Jan 2011 17:50:30 +0000 (19:50 +0200)
committerTeemu Murtola <teemu.murtola@cbr.su.se>
Wed, 12 Jan 2011 17:50:30 +0000 (19:50 +0200)
In addition to a basic Doxyfile that generates all Doxygen
documentation, two other files, Doxyfile-lib and Doxyfile-user are now
generated by CMake for producing limited sets of Doxygen documentation
that exclude intramodule symbols (-lib) or only public API symbols
(-user).

IssueID #638

.gitignore
CMakeLists.txt
Doxyfile-lib.cmakein [new file with mode: 0644]
Doxyfile-user.cmakein [new file with mode: 0644]

index 47e0b64846b6c4904ae579618363725ea05adb19..18ca23639c39740d4d4a4da1b97da12f286a5949 100644 (file)
@@ -22,6 +22,8 @@ Makefile
 .libs
 lib*.pc
 Doxyfile
+Doxyfile-lib
+Doxyfile-user
 doxygen-doc
 .project
 .cproject
index 5d9aa243b9aa757829bdc1762008df5f8d186c07..17fef5023e9323d0b210a1d7001f94cfd469cf22 100644 (file)
@@ -796,6 +796,10 @@ if (DOXYGEN_FOUND)
     ENDFOREACH(NB_KERNEL_DIR)
     CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/Doxyfile.cmakein
                    ${CMAKE_BINARY_DIR}/Doxyfile)
+    CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/Doxyfile-lib.cmakein
+                   ${CMAKE_BINARY_DIR}/Doxyfile-lib)
+    CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/Doxyfile-user.cmakein
+                   ${CMAKE_BINARY_DIR}/Doxyfile-user)
 endif (DOXYGEN_FOUND)
 
 
diff --git a/Doxyfile-lib.cmakein b/Doxyfile-lib.cmakein
new file mode 100644 (file)
index 0000000..278320d
--- /dev/null
@@ -0,0 +1,35 @@
+PROJECT_NAME           = @CMAKE_PROJECT_NAME@
+PROJECT_NUMBER         = @PROJECT_VERSION@
+OUTPUT_DIRECTORY       = doxygen-doc
+INPUT                  = @CMAKE_SOURCE_DIR@/src \
+                         @CMAKE_SOURCE_DIR@/share/template
+EXAMPLE_PATH           = @CMAKE_SOURCE_DIR@
+RECURSIVE              = YES
+EXCLUDE                = @CMAKE_SOURCE_DIR@/src/contrib @NB_KERNEL_DIRS_TO_IGNORE_IN_DOXYGEN@
+EXCLUDE_SYMBOLS        = YY* yy* _gmx_sel_yy*
+FULL_PATH_NAMES        = YES
+STRIP_FROM_PATH        = @CMAKE_SOURCE_DIR@
+STRIP_FROM_INC_PATH    = @CMAKE_SOURCE_DIR@/src
+INCLUDE_PATH           = @CMAKE_SOURCE_DIR@/src \
+                         @CMAKE_SOURCE_DIR@/src/gromacs/legacyheaders
+HAVE_DOT               = @DOXYGEN_DOT_FOUND@
+DOT_PATH               = @DOXYGEN_DOT_PATH@
+
+INTERNAL_DOCS          = NO
+HIDE_UNDOC_CLASSES     = YES
+WARN_LOGFILE           = doxygen-doc/doxygen-lib.log
+HTML_OUTPUT            = html-lib
+
+JAVADOC_AUTOBRIEF      = YES
+BUILTIN_STL_SUPPORT    = YES
+SORT_BY_SCOPE_NAME     = YES
+ALPHABETICAL_INDEX     = YES
+SHOW_DIRECTORIES       = YES
+HTML_DYNAMIC_SECTIONS  = YES
+GENERATE_LATEX         = NO
+
+ALIASES               += inpublicapi="\ingroup group_publicapi"
+ALIASES               += inlibraryapi="\ingroup group_libraryapi"
+ALIASES               += addtopublicapi="\addtogroup group_publicapi"
+ALIASES               += addtolibraryapi="\addtogroup group_libraryapi"
+ALIASES               += libinternal=
diff --git a/Doxyfile-user.cmakein b/Doxyfile-user.cmakein
new file mode 100644 (file)
index 0000000..2a5139a
--- /dev/null
@@ -0,0 +1,35 @@
+PROJECT_NAME           = @CMAKE_PROJECT_NAME@
+PROJECT_NUMBER         = @PROJECT_VERSION@
+OUTPUT_DIRECTORY       = doxygen-doc
+INPUT                  = @CMAKE_SOURCE_DIR@/src \
+                         @CMAKE_SOURCE_DIR@/share/template
+EXAMPLE_PATH           = @CMAKE_SOURCE_DIR@
+RECURSIVE              = YES
+EXCLUDE                = @CMAKE_SOURCE_DIR@/src/contrib @NB_KERNEL_DIRS_TO_IGNORE_IN_DOXYGEN@
+EXCLUDE_SYMBOLS        = YY* yy* _gmx_sel_yy*
+FULL_PATH_NAMES        = YES
+STRIP_FROM_PATH        = @CMAKE_SOURCE_DIR@
+STRIP_FROM_INC_PATH    = @CMAKE_SOURCE_DIR@/src
+INCLUDE_PATH           = @CMAKE_SOURCE_DIR@/src \
+                         @CMAKE_SOURCE_DIR@/src/gromacs/legacyheaders
+HAVE_DOT               = @DOXYGEN_DOT_FOUND@
+DOT_PATH               = @DOXYGEN_DOT_PATH@
+
+INTERNAL_DOCS          = NO
+HIDE_UNDOC_CLASSES     = YES
+WARN_LOGFILE           = doxygen-doc/doxygen-user.log
+HTML_OUTPUT            = html-user
+
+JAVADOC_AUTOBRIEF      = YES
+BUILTIN_STL_SUPPORT    = YES
+SORT_BY_SCOPE_NAME     = YES
+ALPHABETICAL_INDEX     = YES
+SHOW_DIRECTORIES       = YES
+HTML_DYNAMIC_SECTIONS  = YES
+GENERATE_LATEX         = NO
+
+ALIASES               += inpublicapi="\ingroup group_publicapi"
+ALIASES               += inlibraryapi="\ingroup group_libraryapi"
+ALIASES               += addtopublicapi="\addtogroup group_publicapi"
+ALIASES               += addtolibraryapi="\addtogroup group_libraryapi"
+ALIASES               += libinternal="\internal"