Code View

mstring / mstring-1.3.1.2 / docs / Doxyfile.in
# Doxyfile.in — configured by CMake (docs/CMakeLists.txt) into the build tree,
# then run by the `docs` target. Generates the HTML reference of the mstring
# documentation site (the tenant's static/api/, published by ws-release.sh):
#
# - README.md as the main page, docs/syntax.md (the message-file language)
#   and CHANGELOG.md as pages;
# - the generator's internals: the cparse grammar (MStringParser), the model
#   (Settings / Message / Module) and the C++ writers, with their graphs.

DOXYFILE_ENCODING      = UTF-8
PROJECT_NAME           = "mstring"
PROJECT_NUMBER         = "@DOXYGEN_PROJECT_NUMBER@"
PROJECT_BRIEF          = "Generates C++ message functions and classes from localized message definitions"
OUTPUT_DIRECTORY       = "@DOXYGEN_OUTPUT_DIR@"
CREATE_SUBDIRS         = NO
ALLOW_UNICODE_NAMES    = NO
OUTPUT_LANGUAGE        = English
MARKDOWN_SUPPORT       = YES
AUTOLINK_SUPPORT       = YES
BUILTIN_STL_SUPPORT    = YES

# ── Input ───────────────────────────────────────────────────────────────────
# The sources are headers + .cpp files; the .cpp files give the call / caller
# graphs something to analyse. cparse's own types (fedem::*) are documented on
# the cparse site and excluded here.
INPUT                  = "@DOXYGEN_SOURCE_DIR@/README.md" \
                         "@DOXYGEN_SOURCE_DIR@/docs/syntax.md" \
                         "@DOXYGEN_SOURCE_DIR@/CHANGELOG.md" \
                         "@DOXYGEN_SOURCE_DIR@/CONTRIBUTING.md" \
                         "@DOXYGEN_SOURCE_DIR@/TRADEMARKS.md" \
                         "@DOXYGEN_SOURCE_DIR@/src"
INPUT_ENCODING         = UTF-8
FILE_PATTERNS          = *.hh *.cpp *.md
RECURSIVE              = YES
FULL_PATH_NAMES        = NO
STRIP_FROM_PATH        = "@DOXYGEN_SOURCE_DIR@"
USE_MDFILE_AS_MAINPAGE = "@DOXYGEN_SOURCE_DIR@/README.md"
EXAMPLE_PATH           = "@DOXYGEN_SOURCE_DIR@/examples"
EXCLUDE_SYMBOLS        = "fedem::*"

# ── What to extract ─────────────────────────────────────────────────────────
# mstring is a tool, not a library: there is no public API, the "API" pages
# are its internals. EXTRACT_ALL shows every class and function, private and
# static ones included — that wiring is what the graphs are for.
EXTRACT_ALL            = YES
EXTRACT_PRIVATE        = YES
EXTRACT_PRIV_VIRTUAL   = YES
EXTRACT_PACKAGE        = NO
EXTRACT_STATIC         = YES
EXTRACT_LOCAL_CLASSES  = YES
EXTRACT_ANON_NSPACES   = NO
HIDE_UNDOC_MEMBERS     = NO
HIDE_UNDOC_CLASSES     = NO
INTERNAL_DOCS          = NO
CASE_SENSE_NAMES       = YES
HIDE_SCOPE_NAMES       = NO
SHOW_INCLUDE_FILES     = YES
SORT_MEMBER_DOCS       = NO
SORT_BRIEF_DOCS        = NO
SORT_MEMBERS_CTORS_1ST = YES

# ── Build / diagnostics ─────────────────────────────────────────────────────
QUIET                  = YES
WARNINGS               = YES
WARN_IF_UNDOCUMENTED   = NO
WARN_IF_DOC_ERROR      = YES
WARN_IF_INCOMPLETE_DOC = YES
WARN_NO_PARAMDOC       = YES
WARN_AS_ERROR          = @DOXYGEN_WARN_AS_ERROR@

# ── HTML output ─────────────────────────────────────────────────────────────
GENERATE_HTML          = YES
HTML_OUTPUT            = html
HTML_FILE_EXTENSION    = .html
HTML_COLORSTYLE        = LIGHT
GENERATE_TREEVIEW      = YES
DISABLE_INDEX          = NO
FULL_SIDEBAR           = NO
HTML_DYNAMIC_SECTIONS  = YES
SEARCHENGINE           = YES
GENERATE_LATEX         = NO
GENERATE_XML           = NO
GENERATE_MAN           = NO

# Source browser stays off — the code ships in the release archives, not here.
SOURCE_BROWSER         = NO
VERBATIM_HEADERS       = NO

# ── Preprocessing ──────────────────────────────────────────────────────────
ENABLE_PREPROCESSING   = YES
MACRO_EXPANSION        = NO
SEARCH_INCLUDES        = YES

# ── Diagrams ───────────────────────────────────────────────────────────────
# HAVE_DOT is set by CMake from whether Graphviz (`dot`) was found. With it
# off, Doxygen falls back to its own simple inheritance diagrams and the
# call / collaboration / include graphs are skipped.
HAVE_DOT               = @DOXYGEN_HAVE_DOT@
DOT_NUM_THREADS        = 0
DOT_IMAGE_FORMAT       = svg
INTERACTIVE_SVG        = YES
DOT_MULTI_TARGETS      = YES
DOT_CLEANUP            = YES
DOT_GRAPH_MAX_NODES    = 60
MAX_DOT_GRAPH_DEPTH    = 0

# Class diagrams
CLASS_GRAPH            = YES
COLLABORATION_GRAPH    = YES
GROUP_GRAPHS           = YES
UML_LOOK               = NO
TEMPLATE_RELATIONS     = YES
GRAPHICAL_HIERARCHY    = YES

# Dependency graphs
INCLUDE_GRAPH          = YES
INCLUDED_BY_GRAPH      = YES
DIRECTORY_GRAPH        = YES

# Call graphs
CALL_GRAPH             = YES
CALLER_GRAPH           = YES
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION    = YES