Internal docs generation updates (#16411)

master
Ryan 2022-02-22 02:47:44 +11:00 committed by GitHub
parent b1de11c275
commit f30f963a0b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 13 additions and 10 deletions

1
.gitignore vendored
View File

@ -18,7 +18,6 @@
# QMK-specific # QMK-specific
api_data/v1 api_data/v1
doxygen/
quantum/version.h quantum/version.h
*.bin *.bin
*.eep *.eep

View File

@ -21,7 +21,7 @@ DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "QMK Firmware" PROJECT_NAME = "QMK Firmware"
PROJECT_NUMBER = https://github.com/qmk/qmk_firmware PROJECT_NUMBER = https://github.com/qmk/qmk_firmware
PROJECT_BRIEF = "Keyboard controller firmware for Atmel AVR and ARM USB families" PROJECT_BRIEF = "Keyboard controller firmware for Atmel AVR and ARM USB families"
OUTPUT_DIRECTORY = doxygen OUTPUT_DIRECTORY = .build/doxygen
ALLOW_UNICODE_NAMES = NO ALLOW_UNICODE_NAMES = NO
OUTPUT_LANGUAGE = English OUTPUT_LANGUAGE = English
BRIEF_MEMBER_DESC = YES BRIEF_MEMBER_DESC = YES
@ -145,7 +145,7 @@ FILE_PATTERNS = *.c \
RECURSIVE = YES RECURSIVE = YES
EXCLUDE = EXCLUDE =
EXCLUDE_SYMLINKS = NO EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS = EXCLUDE_PATTERNS = */protocol/arm_atsam/*
EXCLUDE_SYMBOLS = EXCLUDE_SYMBOLS =
EXAMPLE_PATH = EXAMPLE_PATH =
EXAMPLE_PATTERNS = * EXAMPLE_PATTERNS = *
@ -209,7 +209,7 @@ EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES SEARCH_INCLUDES = YES
INCLUDE_PATH = INCLUDE_PATH =
INCLUDE_FILE_PATTERNS = INCLUDE_FILE_PATTERNS =
PREDEFINED = PREDEFINED = __DOXYGEN__ PROGMEM
EXPAND_AS_DEFINED = EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES SKIP_FUNCTION_MACROS = YES

View File

@ -7,7 +7,9 @@ from subprocess import DEVNULL
from milc import cli from milc import cli
DOCS_PATH = Path('docs/') DOCS_PATH = Path('docs/')
BUILD_PATH = Path('.build/docs/') BUILD_PATH = Path('.build/')
BUILD_DOCS_PATH = BUILD_PATH / 'docs'
DOXYGEN_PATH = BUILD_PATH / 'doxygen'
@cli.subcommand('Build QMK documentation.', hidden=False if cli.config.user.developer else True) @cli.subcommand('Build QMK documentation.', hidden=False if cli.config.user.developer else True)
@ -18,10 +20,12 @@ def generate_docs(cli):
* [ ] Add a real build step... something static docs * [ ] Add a real build step... something static docs
""" """
if BUILD_PATH.exists(): if BUILD_DOCS_PATH.exists():
shutil.rmtree(BUILD_PATH) shutil.rmtree(BUILD_DOCS_PATH)
if DOXYGEN_PATH.exists():
shutil.rmtree(DOXYGEN_PATH)
shutil.copytree(DOCS_PATH, BUILD_PATH) shutil.copytree(DOCS_PATH, BUILD_DOCS_PATH)
# When not verbose we want to hide all output # When not verbose we want to hide all output
args = { args = {
@ -34,6 +38,6 @@ def generate_docs(cli):
# Generate internal docs # Generate internal docs
cli.run(['doxygen', 'Doxyfile'], **args) cli.run(['doxygen', 'Doxyfile'], **args)
cli.run(['moxygen', '-q', '-a', '-g', '-o', BUILD_PATH / 'internals_%s.md', 'doxygen/xml'], **args) cli.run(['moxygen', '-q', '-g', '-o', BUILD_DOCS_PATH / 'internals_%s.md', DOXYGEN_PATH / 'xml'], **args)
cli.log.info('Successfully generated internal docs to %s.', BUILD_PATH) cli.log.info('Successfully generated internal docs to %s.', BUILD_DOCS_PATH)