Closed ferdnyc closed 3 years ago
Significant changes: I decided that preprocessing the source files wasn't really improving the docs; JUCE did it (according to comments in the Python script) for two main reasons:
This also means building the docs no longer requires Python.
LGTM
Since CMake 3.11, the supported method of integrating Doxygen into CMake projects has been via the
doxygen_add_docs()
CMake function, which (crucially) can be passed a target name to create and doesn't rely on tons of hardcoding like ourUseDoxygen.cmake
and itsDoxyfile
.in template did.This means our docs (only) now require CMake 3.11 to generate, but it allows Doxygen to be configured/used multiple times in the same CMake configuration, removing a major barrier to superproject builds.
Also, made docs disableable via an
ENABLE_AUDIO_DOCS
option, and adoptFeatureSummary
into the build.Because the JUCE Doxygen setup is... complex, they had been pre-processing the source to get a certain documentation hierarchy, something we used to be sort-of approximating badly. That's now done away with, so the docs don't generate exactly like they previously did. But, it's actually better now (IMHO) and still plenty usable. I think the improvements are worth the disruption.