summaryrefslogtreecommitdiff
path: root/lib/python/qmk/cli/generate
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2023-05-20 21:29:58 +0000
committerQMK Bot <hello@qmk.fm>2023-05-20 21:29:58 +0000
commit9d96bfc5f5fff03db0b47da6f1ce740d648ee601 (patch)
tree08bbd1e96048999357bac4d9253694a2cd4adb1f /lib/python/qmk/cli/generate
parentd7220da5cb775f4da139aea141bdd1880eab060a (diff)
parent420e35f9225d7f76e70d25e143311602145c1eb0 (diff)
Merge remote-tracking branch 'origin/master' into develop
Diffstat (limited to 'lib/python/qmk/cli/generate')
-rwxr-xr-xlib/python/qmk/cli/generate/make_dependencies.py17
1 files changed, 8 insertions, 9 deletions
diff --git a/lib/python/qmk/cli/generate/make_dependencies.py b/lib/python/qmk/cli/generate/make_dependencies.py
index 635c341897..9b695e907d 100755
--- a/lib/python/qmk/cli/generate/make_dependencies.py
+++ b/lib/python/qmk/cli/generate/make_dependencies.py
@@ -6,7 +6,6 @@ from milc import cli
from argcomplete.completers import FilesCompleter
from qmk.commands import dump_lines
-from qmk.constants import QMK_FIRMWARE
from qmk.keyboard import keyboard_completer, keyboard_folder
from qmk.keymap import keymap_completer, locate_keymap
from qmk.path import normpath, FileType
@@ -23,34 +22,34 @@ def generate_make_dependencies(cli):
"""
interesting_files = [
'info.json',
- 'keymap.json',
'rules.mk',
'post_rules.mk',
'config.h',
'post_config.h',
]
- found_files = []
+ check_files = []
# Walk up the keyboard's directory tree looking for the files we're interested in
keyboards_root = Path('keyboards')
parent_path = Path('keyboards') / cli.args.keyboard
while parent_path != keyboards_root:
for file in interesting_files:
- test_path = parent_path / file
- if test_path.exists():
- found_files.append(test_path)
+ check_files.append(parent_path / file)
parent_path = parent_path.parent
# Find the keymap and include any of the interesting files
if cli.args.keymap is not None:
km = locate_keymap(cli.args.keyboard, cli.args.keymap)
if km is not None:
+ # keymap.json is only valid for the keymap, so check this one separately
+ check_files.append(km.parent / 'keymap.json')
+ # Add all the interesting files
for file in interesting_files:
- found_files.extend(km.parent.glob(f'**/{file}'))
+ check_files.append(km.parent / file)
# If we have a matching userspace, include those too
for file in interesting_files:
- found_files.extend((QMK_FIRMWARE / 'users' / cli.args.keymap).glob(f'**/{file}'))
+ check_files.append(Path('users') / cli.args.keymap / file)
- dump_lines(cli.args.output, [f'generated-files: {found.resolve()}\n' for found in found_files])
+ dump_lines(cli.args.output, [f'generated-files: $(wildcard {found})\n' for found in check_files])