78 lines
3.3 KiB
Plaintext
78 lines
3.3 KiB
Plaintext
# Doxyfile — DigiRadio firmware
|
|
# Curated (non-default settings only; Doxygen fills the rest with defaults).
|
|
# Verified against Doxygen 1.9.x.
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Project
|
|
#---------------------------------------------------------------------------
|
|
PROJECT_NAME = "DigiRadio Firmware"
|
|
PROJECT_BRIEF = "Open-source Hi-Fi DAB+/FM receiver firmware (ESP32-S3)"
|
|
OUTPUT_DIRECTORY = docs/api
|
|
CREATE_SUBDIRS = YES
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Input
|
|
#---------------------------------------------------------------------------
|
|
INPUT = src include
|
|
FILE_PATTERNS = *.hpp *.h *.cpp
|
|
RECURSIVE = YES
|
|
# Exclude vendored / generated code from the doc requirement:
|
|
EXCLUDE_PATTERNS = */vendor/* */generated/* */build/*
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Build: enforce documentation (this is what makes the rule real)
|
|
#---------------------------------------------------------------------------
|
|
# Do NOT auto-document everything: we want undocumented symbols to warn.
|
|
EXTRACT_ALL = NO
|
|
EXTRACT_PRIVATE = NO
|
|
EXTRACT_STATIC = YES
|
|
HIDE_UNDOC_MEMBERS = NO
|
|
HIDE_UNDOC_CLASSES = NO
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Warnings: fail the build on any missing or malformed documentation
|
|
#---------------------------------------------------------------------------
|
|
QUIET = YES
|
|
WARNINGS = YES
|
|
WARN_IF_UNDOCUMENTED = YES
|
|
WARN_IF_DOC_ERROR = YES
|
|
WARN_IF_INCOMPLETE_DOC = YES
|
|
WARN_NO_PARAMDOC = YES
|
|
# FAIL_ON_WARNINGS turns any of the above into a non-zero exit -> CI fails.
|
|
WARN_AS_ERROR = FAIL_ON_WARNINGS
|
|
WARN_LOGFILE = docs/api/doxygen-warnings.log
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Custom field aliases — map the DigiRadio doc-block fields to Doxygen
|
|
#---------------------------------------------------------------------------
|
|
# ^^ is a newline inside an alias. These render as titled sections in the
|
|
# generated docs, so "Public state used" becomes a real doc section.
|
|
ALIASES += "dname=\par Name:^^"
|
|
ALIASES += "pubstate=\par Public state used:^^"
|
|
|
|
#---------------------------------------------------------------------------
|
|
# C++ language handling
|
|
#---------------------------------------------------------------------------
|
|
OPTIMIZE_OUTPUT_FOR_C = NO
|
|
BUILTIN_STL_SUPPORT = YES
|
|
JAVADOC_AUTOBRIEF = YES
|
|
MARKDOWN_SUPPORT = YES
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Output formats
|
|
#---------------------------------------------------------------------------
|
|
GENERATE_HTML = YES
|
|
GENERATE_LATEX = NO
|
|
# XML is handy if you later feed the docs to another tool (e.g. Sphinx):
|
|
GENERATE_XML = NO
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Diagrams (optional, needs Graphviz 'dot'; great for "fits in your head")
|
|
#---------------------------------------------------------------------------
|
|
HAVE_DOT = YES
|
|
CLASS_GRAPH = YES
|
|
COLLABORATION_GRAPH = YES
|
|
CALL_GRAPH = NO
|
|
CALLER_GRAPH = NO
|
|
DOT_IMAGE_FORMAT = svg
|