Ver código fonte

Internal docs generation updates (#16411)

Ryan 3 anos atrás
pai
commit
f30f963a0b
3 arquivos alterados com 13 adições e 10 exclusões
  1. 0 1
      .gitignore
  2. 3 3
      Doxyfile
  3. 10 6
      lib/python/qmk/cli/generate/docs.py

+ 0 - 1
.gitignore

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

+ 3 - 3
Doxyfile

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

+ 10 - 6
lib/python/qmk/cli/generate/docs.py

@@ -7,7 +7,9 @@ from subprocess import DEVNULL
 from milc import cli
 
 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)
@@ -18,10 +20,12 @@ def generate_docs(cli):
         * [ ] Add a real build step... something static docs
     """
 
-    if BUILD_PATH.exists():
-        shutil.rmtree(BUILD_PATH)
+    if BUILD_DOCS_PATH.exists():
+        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
     args = {
@@ -34,6 +38,6 @@ def generate_docs(cli):
 
     # Generate internal docs
     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)