eliminate the need for -kb all
This commit is contained in:
		
							parent
							
								
									50fdb2a52c
								
							
						
					
					
						commit
						d3ed6fa8a4
					
				
					 2 changed files with 14 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -82,6 +82,9 @@ def compile(cli):
 | 
			
		|||
    If a keyboard and keymap are provided this command will build a firmware based on that.
 | 
			
		||||
    """
 | 
			
		||||
    envs = {'REQUIRE_PLATFORM_KEY': ''}
 | 
			
		||||
    if cli.config.compile.keyboard is None:
 | 
			
		||||
        cli.config.compile.keyboard = ''
 | 
			
		||||
 | 
			
		||||
    silent = cli.config.compile.keyboard == 'all' or cli.config.compile.keyboard.startswith('all-') or cli.config.compile.keymap == 'all'
 | 
			
		||||
 | 
			
		||||
    # Setup the environment
 | 
			
		||||
| 
						 | 
				
			
			@ -104,6 +107,11 @@ def compile(cli):
 | 
			
		|||
            _, _, make_cmd = create_make_command(keyboard, keymap, 'clean', cli.config.compile.parallel, silent, **envs)
 | 
			
		||||
            cli.run(make_cmd, capture_output=False, stdin=DEVNULL)
 | 
			
		||||
 | 
			
		||||
    # If -f has been specified without a keyboard target, assume -kb all
 | 
			
		||||
    if cli.args.filter and not cli.args.keyboard:
 | 
			
		||||
        cli.log.debug('--filter supplied without --keyboard, assuming --keyboard all.')
 | 
			
		||||
        cli.config.compile.keyboard = 'all'
 | 
			
		||||
 | 
			
		||||
    # Determine the compile command(s)
 | 
			
		||||
    commands = None
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -128,6 +136,10 @@ def compile(cli):
 | 
			
		|||
    if commands:
 | 
			
		||||
        returncodes = []
 | 
			
		||||
        for keyboard, keymap, command in commands:
 | 
			
		||||
            if keymap not in list_keymaps(keyboard):
 | 
			
		||||
                cli.log.debug('Skipping keyboard %s, no %s keymap found.', keyboard, keymap)
 | 
			
		||||
                continue
 | 
			
		||||
 | 
			
		||||
            print()
 | 
			
		||||
            cli.log.info('Building firmware for {fg_cyan}%s{fg_reset} with keymap {fg_cyan}%s', keyboard, keymap)
 | 
			
		||||
            cli.log.debug('Running make command: {fg_blue}%s', ' '.join(command))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,6 @@
 | 
			
		|||
"""Functions that help you work with QMK keymaps.
 | 
			
		||||
"""
 | 
			
		||||
from functools import lru_cache
 | 
			
		||||
import json
 | 
			
		||||
import sys
 | 
			
		||||
from pathlib import Path
 | 
			
		||||
| 
						 | 
				
			
			@ -306,6 +307,7 @@ def locate_keymap(keyboard, keymap):
 | 
			
		|||
                    return community_layout / 'keymap.c'
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@lru_cache()
 | 
			
		||||
def list_keymaps(keyboard, c=True, json=True, additional_files=None, fullpath=False):
 | 
			
		||||
    """List the available keymaps for a keyboard.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue