blob: de3d97428da62ef60cafe75510e54a5c8e144575 [file]
# Doxygen configuration template for JsonCpp.
#
# Only settings that differ from the doxygen defaults are listed. Tokens of the
# form %NAME% are substituted by doxybuild.py, which is the supported way to
# build the documentation:
#
# python3 doxybuild.py [--with-dot] [--open]
#
# Run `doxygen -x doc/doxyfile` (after doxybuild.py has generated it) to see the
# effective configuration, or `doxygen -g` for a fully-commented reference.
#---------------------------------------------------------------------------
# Project
#---------------------------------------------------------------------------
PROJECT_NAME = JsonCpp
PROJECT_NUMBER = %JSONCPP_VERSION%
PROJECT_BRIEF = "JSON data format manipulation library"
STRIP_FROM_PATH = %TOPDIR%
STRIP_FROM_INC_PATH = %TOPDIR%/include
JAVADOC_AUTOBRIEF = YES
TAB_SIZE = 2
BUILTIN_STL_SUPPORT = YES
TIMESTAMP = NO
#---------------------------------------------------------------------------
# Input
#---------------------------------------------------------------------------
INPUT = ../include \
../src/lib_json \
../README.md \
.
FILE_PATTERNS = *.h \
*.cpp \
*.inl \
*.dox \
*.md
RECURSIVE = YES
USE_MDFILE_AS_MAINPAGE = ../README.md
EXAMPLE_PATH = ..
#---------------------------------------------------------------------------
# Extraction
#---------------------------------------------------------------------------
EXTRACT_ALL = YES
EXTRACT_STATIC = YES
EXTRACT_LOCAL_CLASSES = NO
INTERNAL_DOCS = YES
CASE_SENSE_NAMES = NO
SORT_BY_SCOPE_NAME = YES
GENERATE_TESTLIST = NO
GENERATE_BUGLIST = NO
#---------------------------------------------------------------------------
# Warnings: the build fails on any documentation warning so regressions are
# caught in CI. See .github/workflows/docs.yml.
#---------------------------------------------------------------------------
WARN_AS_ERROR = FAIL_ON_WARNINGS
WARN_LOGFILE = %WARNING_LOG_PATH%
#---------------------------------------------------------------------------
# Preprocessing: document the public API as seen by a modern C++17 compiler,
# with export/deprecation decorations stripped.
#---------------------------------------------------------------------------
MACRO_EXPANSION = YES
INCLUDE_PATH = ../include
INCLUDE_FILE_PATTERNS = *.h
PREDEFINED = JSONCPP_DOC_EXCLUDE_IMPLEMENTATION \
"JSONCPP_DEPRECATED(message)=" \
"JSON_API=" \
"JSONCPP_NORETURN=" \
"__cplusplus=201703L" \
"JSON_USE_EXCEPTION=1"
#---------------------------------------------------------------------------
# HTML output, styled with doxygen-awesome-css (doc/doxygen-awesome-css/).
# The colour-style settings are the ones recommended by that theme.
#---------------------------------------------------------------------------
HTML_OUTPUT = %HTML_OUTPUT%
HTML_EXTRA_STYLESHEET = doxygen-awesome-css/doxygen-awesome.css \
doxygen-awesome-css/doxygen-awesome-sidebar-only.css
HTML_COLORSTYLE = LIGHT
HTML_COLORSTYLE_HUE = 209
HTML_COLORSTYLE_SAT = 255
HTML_COLORSTYLE_GAMMA = 113
HTML_DYNAMIC_SECTIONS = YES
GENERATE_TREEVIEW = YES
DISABLE_INDEX = NO
FULL_SIDEBAR = NO
SEARCHENGINE = YES
SOURCE_BROWSER = YES
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
GENERATE_LATEX = NO
#---------------------------------------------------------------------------
# Graphs (only when doxybuild.py is run with --with-dot)
#---------------------------------------------------------------------------
HAVE_DOT = %HAVE_DOT%
DOT_PATH = %DOT_PATH%
DOT_IMAGE_FORMAT = svg
UML_LOOK = %UML_LOOK%
TEMPLATE_RELATIONS = YES
# Graphs that exceed this are skipped with a warning, which WARN_AS_ERROR
# turns into a build failure; keep comfortable headroom.
DOT_GRAPH_MAX_NODES = 200