Skip to content
Snippets Groups Projects
Commit 40c675f6 authored by Stephan Schulz's avatar Stephan Schulz
Browse files

fix sphinx and update doxygen (#29)

parent 166b7c6a
No related branches found
No related tags found
1 merge request!8Refactor
...@@ -38,7 +38,10 @@ add_compile_options("$<$<AND:$<CONFIG:Debug>,$<COMPILE_LANGUAGE:Fortran>,$<Fortr ...@@ -38,7 +38,10 @@ add_compile_options("$<$<AND:$<CONFIG:Debug>,$<COMPILE_LANGUAGE:Fortran>,$<Fortr
add_compile_options("$<$<AND:$<CONFIG:Debug>,$<COMPILE_LANGUAGE:C>,$<C_COMPILER_ID:GNU>>:-Wall;-Wextra>") add_compile_options("$<$<AND:$<CONFIG:Debug>,$<COMPILE_LANGUAGE:C>,$<C_COMPILER_ID:GNU>>:-Wall;-Wextra>")
add_compile_options("$<$<AND:$<CONFIG:Debug>,$<COMPILE_LANGUAGE:CXX>,$<CXX_COMPILER_ID:GNU>>:-Wall;-Wextra>") add_compile_options("$<$<AND:$<CONFIG:Debug>,$<COMPILE_LANGUAGE:CXX>,$<CXX_COMPILER_ID:GNU>>:-Wall;-Wextra>")
project(ALL) project(ALL
VERSION "0.1.0"
DESCRIPTION "A Loadbalacing Library"
HOMEPAGE_URL "localhost")
# add custom find-scripts to module path # add custom find-scripts to module path
set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH}) set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
......
message("Generating ALL Documentation:") message("Generating ALL Documentation:")
find_package(Doxygen REQUIRED) find_package(Doxygen REQUIRED)
find_package(Python3 REQUIRED)
message(DEBUG "Python3 version: ${PYTHON3_VERSION}")
find_package(Sphinx REQUIRED) find_package(Sphinx REQUIRED)
#find breathe
# todo(s.schulz): The following does not seem to work. It returns non zero even
# though the package is installed and the correct Python interpreter is found.
# The python interpreter is in a non standard path and included using
# environment variables and the module was installed in the users directory
# (pip3 install --user breathe).
#execute_process(
# COMMAND Python3::Interpreter -c "import breathe"
# RESULT_VARIABLE BREATHE_NOT_FOUND
# OUTPUT_QUIET
# )
#if(NOT ${BREATHE_NOT_FOUND} EQUAL 0)
# message( FATAL_ERROR "Python \"breathe\" package not found")
#endif()
#do we need to make sure sphinx_rtd_theme is installed?
# Find all public headers # Find all public headers
get_target_property(ALL_PUBLIC_HEADER_DIR ALL INTERFACE_INCLUDE_DIRECTORIES) get_target_property(ALL_PUBLIC_HEADER_DIR ALL INTERFACE_INCLUDE_DIRECTORIES)
file(GLOB_RECURSE ALL_PUBLIC_HEADERS ${ALL_PUBLIC_HEADER_DIR}) file(GLOB_RECURSE ALL_PUBLIC_HEADERS ${ALL_PUBLIC_HEADER_DIR})
# setup configuring of doxygen # setup configuring of doxygen
set(DOXYGEN_INPUT_DIR ${PROJECT_SOURCE_DIR}/include) # Caveat(s.schulz): Make sure there are not spaces within the paths.
set(DOXYGEN_INPUT_DIR ${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/src ${PROJECT_SOURCE_DIR}/example)
string(REPLACE ";" "\" \"" DOXYGEN_INPUT_DIR "${DOXYGEN_INPUT_DIR}")
set(DOXYGEN_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/doc/doxygen) set(DOXYGEN_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/doc/doxygen)
set(DOXYGEN_INDEX_FILE ${DOXYGEN_OUTPUT_DIR}/xml/index.xml) set(DOXYGEN_INDEX_FILE ${DOXYGEN_OUTPUT_DIR}/xml/index.xml)
set(DOXYFILE_IN ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in) set(DOXYFILE_IN ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in)
set(DOXYFILE_OUT ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile) set(DOXYFILE_OUT ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
set(DOXYGEN_INTERNAL_DOCS NO)
set(DOXYGEN_EXAMPLE_PATH ${PROJECT_SOURCE_DIR}/example)
set(DOXYGEN_USE_MDFILE_AS_MAINPAGE ${PROJECT_SOURCE_DIR}/README.md)
# configure doxygen config file # configure doxygen config file
configure_file(${DOXYFILE_IN} ${DOXYFILE_OUT} @ONLY) configure_file(${DOXYFILE_IN} ${DOXYFILE_OUT} @ONLY)
......
...@@ -32,19 +32,19 @@ DOXYFILE_ENCODING = UTF-8 ...@@ -32,19 +32,19 @@ DOXYFILE_ENCODING = UTF-8
# title of most generated pages and in a few other places. # title of most generated pages and in a few other places.
# The default value is: My Project. # The default value is: My Project.
PROJECT_NAME = "MPCD" PROJECT_NAME = "@PROJECT_NAME@"
# The PROJECT_NUMBER tag can be used to enter a project or revision number. This # The PROJECT_NUMBER tag can be used to enter a project or revision number. This
# could be handy for archiving the generated documentation or if some version # could be handy for archiving the generated documentation or if some version
# control system is used. # control system is used.
PROJECT_NUMBER = PROJECT_NUMBER = "@PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@.@PROJECT_VERSION_PATCH@"
# Using the PROJECT_BRIEF tag one can provide an optional one line description # Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a # for a project that appears at the top of each page and should give viewer a
# quick idea about the purpose of the project. Keep the description short. # quick idea about the purpose of the project. Keep the description short.
PROJECT_BRIEF = PROJECT_BRIEF = "@PROJECT_DESCRIPTION@"
# With the PROJECT_LOGO tag one can specify a logo or an icon that is included # With the PROJECT_LOGO tag one can specify a logo or an icon that is included
# in the documentation. The maximum height of the logo should not exceed 55 # in the documentation. The maximum height of the logo should not exceed 55
...@@ -226,7 +226,7 @@ SEPARATE_MEMBER_PAGES = NO ...@@ -226,7 +226,7 @@ SEPARATE_MEMBER_PAGES = NO
# uses this value to replace tabs by spaces in code fragments. # uses this value to replace tabs by spaces in code fragments.
# Minimum value: 1, maximum value: 16, default value: 4. # Minimum value: 1, maximum value: 16, default value: 4.
TAB_SIZE = 4 TAB_SIZE = 2
# This tag can be used to specify a number of aliases that act as commands in # This tag can be used to specify a number of aliases that act as commands in
# the documentation. An alias has the form: # the documentation. An alias has the form:
...@@ -328,7 +328,7 @@ AUTOLINK_SUPPORT = YES ...@@ -328,7 +328,7 @@ AUTOLINK_SUPPORT = YES
# diagrams that involve STL classes more complete and accurate. # diagrams that involve STL classes more complete and accurate.
# The default value is: NO. # The default value is: NO.
BUILTIN_STL_SUPPORT = NO BUILTIN_STL_SUPPORT = YES
# If you use Microsoft's C++/CLI language, you should set this option to YES to # If you use Microsoft's C++/CLI language, you should set this option to YES to
# enable parsing support. # enable parsing support.
...@@ -397,7 +397,7 @@ INLINE_GROUPED_CLASSES = NO ...@@ -397,7 +397,7 @@ INLINE_GROUPED_CLASSES = NO
# Man pages) or section (for LaTeX and RTF). # Man pages) or section (for LaTeX and RTF).
# The default value is: NO. # The default value is: NO.
INLINE_SIMPLE_STRUCTS = NO INLINE_SIMPLE_STRUCTS = YES
# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or # When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
# enum is documented as struct, union, or enum with the name of the typedef. So # enum is documented as struct, union, or enum with the name of the typedef. So
...@@ -515,7 +515,7 @@ HIDE_IN_BODY_DOCS = NO ...@@ -515,7 +515,7 @@ HIDE_IN_BODY_DOCS = NO
# will be excluded. Set it to YES to include the internal documentation. # will be excluded. Set it to YES to include the internal documentation.
# The default value is: NO. # The default value is: NO.
INTERNAL_DOCS = NO INTERNAL_DOCS = @DOXYGEN_INTERNAL_DOCS@
# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file # If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
# names in lower-case letters. If set to YES, upper-case letters are also # names in lower-case letters. If set to YES, upper-case letters are also
...@@ -578,7 +578,7 @@ SORT_MEMBER_DOCS = YES ...@@ -578,7 +578,7 @@ SORT_MEMBER_DOCS = YES
# this will also influence the order of the classes in the class list. # this will also influence the order of the classes in the class list.
# The default value is: NO. # The default value is: NO.
SORT_BRIEF_DOCS = NO SORT_BRIEF_DOCS = YES
# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the # If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
# (brief and detailed) documentation of class members so that constructors and # (brief and detailed) documentation of class members so that constructors and
...@@ -590,7 +590,7 @@ SORT_BRIEF_DOCS = NO ...@@ -590,7 +590,7 @@ SORT_BRIEF_DOCS = NO
# detailed member documentation. # detailed member documentation.
# The default value is: NO. # The default value is: NO.
SORT_MEMBERS_CTORS_1ST = NO SORT_MEMBERS_CTORS_1ST = YES
# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy # If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
# of group names into alphabetical order. If set to NO the group names will # of group names into alphabetical order. If set to NO the group names will
...@@ -623,7 +623,7 @@ STRICT_PROTO_MATCHING = NO ...@@ -623,7 +623,7 @@ STRICT_PROTO_MATCHING = NO
# list. This list is created by putting \todo commands in the documentation. # list. This list is created by putting \todo commands in the documentation.
# The default value is: YES. # The default value is: YES.
GENERATE_TODOLIST = YES GENERATE_TODOLIST = NO
# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test # The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
# list. This list is created by putting \test commands in the documentation. # list. This list is created by putting \test commands in the documentation.
...@@ -820,45 +820,24 @@ FILE_PATTERNS = *.c \ ...@@ -820,45 +820,24 @@ FILE_PATTERNS = *.c \
*.cxx \ *.cxx \
*.cpp \ *.cpp \
*.c++ \ *.c++ \
*.java \
*.ii \
*.ixx \
*.ipp \
*.i++ \
*.inl \
*.idl \
*.ddl \
*.odl \
*.h \ *.h \
*.hh \ *.hh \
*.hxx \ *.hxx \
*.hpp \ *.hpp \
*.h++ \ *.h++ \
*.cs \
*.d \
*.php \
*.php4 \
*.php5 \
*.phtml \
*.inc \ *.inc \
*.m \
*.markdown \ *.markdown \
*.md \ *.md \
*.mm \
*.dox \ *.dox \
*.py \ *.py \
*.pyw \ *.pyw \
*.f90 \ *.f90 \
*.F90 \
*.f95 \ *.f95 \
*.f03 \ *.f03 \
*.f08 \ *.f08 \
*.f \ *.f \
*.for \ *.for
*.tcl \
*.vhd \
*.vhdl \
*.ucf \
*.qsf
# The RECURSIVE tag can be used to specify whether or not subdirectories should # The RECURSIVE tag can be used to specify whether or not subdirectories should
# be searched for input files as well. # be searched for input files as well.
...@@ -906,7 +885,7 @@ EXCLUDE_SYMBOLS = ...@@ -906,7 +885,7 @@ EXCLUDE_SYMBOLS =
# that contain example code fragments that are included (see the \include # that contain example code fragments that are included (see the \include
# command). # command).
EXAMPLE_PATH = EXAMPLE_PATH = "@DOXYGEN_EXAMPLE_PATH@"
# If the value of the EXAMPLE_PATH tag contains directories, you can use the # If the value of the EXAMPLE_PATH tag contains directories, you can use the
# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
...@@ -982,7 +961,7 @@ FILTER_SOURCE_PATTERNS = ...@@ -982,7 +961,7 @@ FILTER_SOURCE_PATTERNS =
# (index.html). This can be useful if you have a project on for instance GitHub # (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output. # and want to reuse the introduction page also for the doxygen output.
USE_MDFILE_AS_MAINPAGE = USE_MDFILE_AS_MAINPAGE = "@DOXYGEN_USE_MDFILE_AS_MAINPAGE@"
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Configuration options related to source browsing # Configuration options related to source browsing
...@@ -995,7 +974,7 @@ USE_MDFILE_AS_MAINPAGE = ...@@ -995,7 +974,7 @@ USE_MDFILE_AS_MAINPAGE =
# also VERBATIM_HEADERS is set to NO. # also VERBATIM_HEADERS is set to NO.
# The default value is: NO. # The default value is: NO.
SOURCE_BROWSER = NO SOURCE_BROWSER = YES
# Setting the INLINE_SOURCES tag to YES will include the body of functions, # Setting the INLINE_SOURCES tag to YES will include the body of functions,
# classes and enums directly into the documentation. # classes and enums directly into the documentation.
...@@ -1249,7 +1228,7 @@ HTML_TIMESTAMP = NO ...@@ -1249,7 +1228,7 @@ HTML_TIMESTAMP = NO
# The default value is: NO. # The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.
HTML_DYNAMIC_SECTIONS = NO HTML_DYNAMIC_SECTIONS = YES
# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries # With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
# shown in the various tree structured indices initially; the user can expand # shown in the various tree structured indices initially; the user can expand
...@@ -1478,7 +1457,7 @@ DISABLE_INDEX = NO ...@@ -1478,7 +1457,7 @@ DISABLE_INDEX = NO
# The default value is: NO. # The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.
GENERATE_TREEVIEW = NO GENERATE_TREEVIEW = YES
# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that # The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
# doxygen will group on one line in the generated HTML documentation. # doxygen will group on one line in the generated HTML documentation.
...@@ -1666,7 +1645,7 @@ EXTRA_SEARCH_MAPPINGS = ...@@ -1666,7 +1645,7 @@ EXTRA_SEARCH_MAPPINGS =
# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output. # If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
# The default value is: YES. # The default value is: YES.
GENERATE_LATEX = YES GENERATE_LATEX = NO
# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of # relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
...@@ -2099,7 +2078,7 @@ INCLUDE_FILE_PATTERNS = ...@@ -2099,7 +2078,7 @@ INCLUDE_FILE_PATTERNS =
# recursively expanded use the := operator instead of the = operator. # recursively expanded use the := operator instead of the = operator.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
PREDEFINED = PREDEFINED = ALL_VORONOI_ACTIVE ALL_VTK_OUTPUT
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The # tag can be used to specify a list of macro names that should be expanded. The
...@@ -2331,7 +2310,7 @@ INCLUDED_BY_GRAPH = YES ...@@ -2331,7 +2310,7 @@ INCLUDED_BY_GRAPH = YES
# The default value is: NO. # The default value is: NO.
# This tag requires that the tag HAVE_DOT is set to YES. # This tag requires that the tag HAVE_DOT is set to YES.
CALL_GRAPH = NO CALL_GRAPH = YES
# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller # If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
# dependency graph for every global function or class method. # dependency graph for every global function or class method.
...@@ -2343,7 +2322,7 @@ CALL_GRAPH = NO ...@@ -2343,7 +2322,7 @@ CALL_GRAPH = NO
# The default value is: NO. # The default value is: NO.
# This tag requires that the tag HAVE_DOT is set to YES. # This tag requires that the tag HAVE_DOT is set to YES.
CALLER_GRAPH = NO CALLER_GRAPH = YES
# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical # If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
# hierarchy of all classes instead of a textual one. # hierarchy of all classes instead of a textual one.
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
ALL ALL
=== ===
.. doxygenclass:: ALL .. doxygenclass:: ALL::ALL
:members: :members:
:protected-members: :protected-members:
:private-members: :private-members:
......
...@@ -2,6 +2,6 @@ ...@@ -2,6 +2,6 @@
ALL_Functions overview ALL_Functions overview
====================== ======================
.. doxygennamespace:: ALL_Functions .. doxygennamespace:: ALL::Functions
:project: ALL :project: ALL
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
ALL_Histogram ALL_Histogram
============= =============
.. doxygenclass:: ALL_Histogram_LB .. doxygenclass:: ALL::Histogram_LB
:members: :members:
:protected-members: :protected-members:
:private-members: :private-members:
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
ALL_LB ALL_LB
============= =============
.. doxygenclass:: ALL_LB .. doxygenclass:: ALL::LB
:members: :members:
:protected-members: :protected-members:
:private-members: :private-members:
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
ALL_Point ALL_Point
============= =============
.. doxygenclass:: ALL_Point .. doxygenclass:: ALL::Point
:members: :members:
:protected-members: :protected-members:
:private-members: :private-members:
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
ALL_Staggered ALL_Staggered
============= =============
.. doxygenclass:: ALL_Staggered_LB .. doxygenclass:: ALL::Staggered_LB
:members: :members:
:protected-members: :protected-members:
:private-members: :private-members:
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
ALL_Tensor ALL_Tensor
========== ==========
.. doxygenclass:: ALL_Tensor_LB .. doxygenclass:: ALL::Tensor_LB
:members: :members:
:private-members: :private-members:
:protected-members: :protected-members:
......
===========
ALL_Voronoi
===========
.. doxygenclass:: ALL::Voronoi_LB
:members:
:private-members:
:protected-members:
:undoc-members:
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment