summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZach White <skullydazed@gmail.com>2021-01-02 18:08:17 -0800
committerGitHub <noreply@github.com>2021-01-03 13:08:17 +1100
commit11bd98f684148ed9577b263189121e52027d66d9 (patch)
treea10d89e82aae10765082c3cc0a6893ac17ca89f7
parentf27d8d94489342d4ce7ba9955cd062c725350db9 (diff)
Fix broken keyboards (#11412)
* Fix a couple errors * add a dependency for the generated headers
-rw-r--r--keyboards/jm60/jm60.h4
-rwxr-xr-xlib/python/qmk/cli/generate/layouts.py19
-rw-r--r--lib/python/qmk/info.py3
-rw-r--r--tmk_core/rules.mk8
4 files changed, 20 insertions, 14 deletions
diff --git a/keyboards/jm60/jm60.h b/keyboards/jm60/jm60.h
index f83b94f902..34ca4d3d6c 100644
--- a/keyboards/jm60/jm60.h
+++ b/keyboards/jm60/jm60.h
@@ -35,7 +35,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
* | 40 | 41 | 42 | 46 | 4a | 4b | 4c | 4d |
* `-----------------------------------------------------------'
*/
-#define KEYMAP_ANSI( \
+#define LAYOUT_ansi( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, k2d, \
@@ -51,3 +51,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
}
#endif
+
+#define KEYMAP_ANSI LAYOUT_ansi
diff --git a/lib/python/qmk/cli/generate/layouts.py b/lib/python/qmk/cli/generate/layouts.py
index 809f0ef7ec..273870e15c 100755
--- a/lib/python/qmk/cli/generate/layouts.py
+++ b/lib/python/qmk/cli/generate/layouts.py
@@ -39,15 +39,16 @@ def generate_layouts(cli):
# Build the layouts.h file.
layouts_h_lines = ['/* This file was generated by `qmk generate-layouts`. Do not edit or copy.' ' */', '', '#pragma once']
- if 'direct' in kb_info_json['matrix_pins']:
- col_num = len(kb_info_json['matrix_pins']['direct'][0])
- row_num = len(kb_info_json['matrix_pins']['direct'])
- elif 'cols' in kb_info_json['matrix_pins'] and 'rows' in kb_info_json['matrix_pins']:
- col_num = len(kb_info_json['matrix_pins']['cols'])
- row_num = len(kb_info_json['matrix_pins']['rows'])
- else:
- cli.log.error('%s: Invalid matrix config.', cli.config.generate_layouts.keyboard)
- return False
+ if 'matrix_pins' in kb_info_json:
+ if 'direct' in kb_info_json['matrix_pins']:
+ col_num = len(kb_info_json['matrix_pins']['direct'][0])
+ row_num = len(kb_info_json['matrix_pins']['direct'])
+ elif 'cols' in kb_info_json['matrix_pins'] and 'rows' in kb_info_json['matrix_pins']:
+ col_num = len(kb_info_json['matrix_pins']['cols'])
+ row_num = len(kb_info_json['matrix_pins']['rows'])
+ else:
+ cli.log.error('%s: Invalid matrix config.', cli.config.generate_layouts.keyboard)
+ return False
for layout_name in kb_info_json['layouts']:
if kb_info_json['layouts'][layout_name]['c_macro']:
diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py
index d7b128aa66..2954a17e09 100644
--- a/lib/python/qmk/info.py
+++ b/lib/python/qmk/info.py
@@ -134,6 +134,9 @@ def _extract_indicators(info_data, config_c):
_log_warning(info_data, f'Indicator {json_key} is specified in both info.json and config.h, the config.h value wins.')
if config_key in config_c:
+ if 'indicators' not in info_data:
+ info_data['indicators'] = {}
+
info_data['indicators'][json_key] = config_c.get(config_key)
return info_data
diff --git a/tmk_core/rules.mk b/tmk_core/rules.mk
index a77e55dd13..b595ddb1db 100644
--- a/tmk_core/rules.mk
+++ b/tmk_core/rules.mk
@@ -324,27 +324,27 @@ $1_CXXFLAGS = $$(ALL_CXXFLAGS) $$($1_DEFS) $$($1_INCFLAGS) $$($1_CONFIG_FLAGS) $
$1_ASFLAGS = $$(ALL_ASFLAGS) $$($1_DEFS) $$($1_INCFLAGS) $$($1_CONFIG_FLAGS)
# Compile: create object files from C source files.
-$1/%.o : %.c $1/%.d $1/cflags.txt $1/compiler.txt | $(BEGIN)
+$1/%.o : %.c $1/%.d $1/cflags.txt $1/compiler.txt $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/layouts.h | $(BEGIN)
@mkdir -p $$(@D)
@$$(SILENT) || printf "$$(MSG_COMPILING) $$<" | $$(AWK_CMD)
$$(eval CMD := $$(CC) -c $$($1_CFLAGS) $$(INIT_HOOK_CFLAGS) $$(GENDEPFLAGS) $$< -o $$@ && $$(MOVE_DEP))
@$$(BUILD_CMD)
# Compile: create object files from C++ source files.
-$1/%.o : %.cpp $1/%.d $1/cxxflags.txt $1/compiler.txt | $(BEGIN)
+$1/%.o : %.cpp $1/%.d $1/cxxflags.txt $1/compiler.txt $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/layouts.h | $(BEGIN)
@mkdir -p $$(@D)
@$$(SILENT) || printf "$$(MSG_COMPILING_CXX) $$<" | $$(AWK_CMD)
$$(eval CMD=$$(CC) -c $$($1_CXXFLAGS) $$(INIT_HOOK_CFLAGS) $$(GENDEPFLAGS) $$< -o $$@ && $$(MOVE_DEP))
@$$(BUILD_CMD)
-$1/%.o : %.cc $1/%.d $1/cxxflags.txt $1/compiler.txt | $(BEGIN)
+$1/%.o : %.cc $1/%.d $1/cxxflags.txt $1/compiler.txt $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/layouts.h | $(BEGIN)
@mkdir -p $$(@D)
@$$(SILENT) || printf "$$(MSG_COMPILING_CXX) $$<" | $$(AWK_CMD)
$$(eval CMD=$$(CC) -c $$($1_CXXFLAGS) $$(INIT_HOOK_CFLAGS) $$(GENDEPFLAGS) $$< -o $$@ && $$(MOVE_DEP))
@$$(BUILD_CMD)
# Assemble: create object files from assembler source files.
-$1/%.o : %.S $1/asflags.txt $1/compiler.txt | $(BEGIN)
+$1/%.o : %.S $1/asflags.txt $1/compiler.txt $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/layouts.h | $(BEGIN)
@mkdir -p $$(@D)
@$(SILENT) || printf "$$(MSG_ASSEMBLING) $$<" | $$(AWK_CMD)
$$(eval CMD=$$(CC) -c $$($1_ASFLAGS) $$< -o $$@)