diff options
author | Joel Challis <[email protected]> | 2024-03-10 05:20:25 +0000 |
---|---|---|
committer | GitHub <[email protected]> | 2024-03-10 16:20:25 +1100 |
commit | 9f4a9d5826dde903aa0dcec3264cbf192b5044da (patch) | |
tree | 3a3584e796ed2f8847f8a0ac33ef37bde58e66e0 /builddefs | |
parent | c5225ab5009476c60a9cb27837615d4f29c9b19a (diff) | |
download | qmk_firmware-9f4a9d5826dde903aa0dcec3264cbf192b5044da.tar.gz qmk_firmware-9f4a9d5826dde903aa0dcec3264cbf192b5044da.zip |
Enable 'keyboard.json' as a build target (#22891)
Diffstat (limited to 'builddefs')
-rw-r--r-- | builddefs/build_keyboard.mk | 40 |
1 files changed, 28 insertions, 12 deletions
diff --git a/builddefs/build_keyboard.mk b/builddefs/build_keyboard.mk index f17171fe20..0b9ab8849f 100644 --- a/builddefs/build_keyboard.mk +++ b/builddefs/build_keyboard.mk @@ -119,7 +119,7 @@ MAIN_KEYMAP_PATH_3 := $(KEYBOARD_PATH_3)/keymaps/$(KEYMAP) MAIN_KEYMAP_PATH_4 := $(KEYBOARD_PATH_4)/keymaps/$(KEYMAP) MAIN_KEYMAP_PATH_5 := $(KEYBOARD_PATH_5)/keymaps/$(KEYMAP) -# Pull in rules from info.json +# Pull in rules from DD keyboard config INFO_RULES_MK = $(shell $(QMK_BIN) generate-rules-mk --quiet --escape --keyboard $(KEYBOARD) --output $(INTERMEDIATE_OUTPUT)/src/info_rules.mk) include $(INFO_RULES_MK) @@ -221,7 +221,7 @@ include $(BUILDDEFS_PATH)/converters.mk MCU_ORIG := $(MCU) include $(wildcard $(PLATFORM_PATH)/*/mcu_selection.mk) -# PLATFORM_KEY should be detected in info.json via key 'processor' (or rules.mk 'MCU') +# PLATFORM_KEY should be detected in DD keyboard config via key 'processor' (or rules.mk 'MCU') ifeq ($(PLATFORM_KEY),) $(call CATASTROPHIC_ERROR,Platform not defined) endif @@ -335,38 +335,54 @@ ifneq ("$(wildcard $(KEYBOARD_PATH_5)/post_config.h)","") POST_CONFIG_H += $(KEYBOARD_PATH_5)/post_config.h endif -# Pull in stuff from info.json -INFO_JSON_FILES := +# Create dependencies on DD keyboard config - structure validated elsewhere +DD_CONFIG_FILES := ifneq ("$(wildcard $(KEYBOARD_PATH_1)/info.json)","") - INFO_JSON_FILES += $(KEYBOARD_PATH_1)/info.json + DD_CONFIG_FILES += $(KEYBOARD_PATH_1)/info.json endif ifneq ("$(wildcard $(KEYBOARD_PATH_2)/info.json)","") - INFO_JSON_FILES += $(KEYBOARD_PATH_2)/info.json + DD_CONFIG_FILES += $(KEYBOARD_PATH_2)/info.json endif ifneq ("$(wildcard $(KEYBOARD_PATH_3)/info.json)","") - INFO_JSON_FILES += $(KEYBOARD_PATH_3)/info.json + DD_CONFIG_FILES += $(KEYBOARD_PATH_3)/info.json endif ifneq ("$(wildcard $(KEYBOARD_PATH_4)/info.json)","") - INFO_JSON_FILES += $(KEYBOARD_PATH_4)/info.json + DD_CONFIG_FILES += $(KEYBOARD_PATH_4)/info.json endif ifneq ("$(wildcard $(KEYBOARD_PATH_5)/info.json)","") - INFO_JSON_FILES += $(KEYBOARD_PATH_5)/info.json + DD_CONFIG_FILES += $(KEYBOARD_PATH_5)/info.json +endif + +ifneq ("$(wildcard $(KEYBOARD_PATH_1)/keyboard.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_1)/keyboard.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_2)/keyboard.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_2)/keyboard.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_3)/keyboard.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_3)/keyboard.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_4)/keyboard.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_4)/keyboard.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_5)/keyboard.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_5)/keyboard.json endif CONFIG_H += $(INTERMEDIATE_OUTPUT)/src/info_config.h KEYBOARD_SRC += $(INTERMEDIATE_OUTPUT)/src/default_keyboard.c -$(INTERMEDIATE_OUTPUT)/src/info_config.h: $(INFO_JSON_FILES) +$(INTERMEDIATE_OUTPUT)/src/info_config.h: $(DD_CONFIG_FILES) @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) $(eval CMD=$(QMK_BIN) generate-config-h --quiet --keyboard $(KEYBOARD) --output $(INTERMEDIATE_OUTPUT)/src/info_config.h) @$(BUILD_CMD) -$(INTERMEDIATE_OUTPUT)/src/default_keyboard.c: $(INFO_JSON_FILES) +$(INTERMEDIATE_OUTPUT)/src/default_keyboard.c: $(DD_CONFIG_FILES) @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) $(eval CMD=$(QMK_BIN) generate-keyboard-c --quiet --keyboard $(KEYBOARD) --output $(INTERMEDIATE_OUTPUT)/src/default_keyboard.c) @$(BUILD_CMD) -$(INTERMEDIATE_OUTPUT)/src/default_keyboard.h: $(INFO_JSON_FILES) +$(INTERMEDIATE_OUTPUT)/src/default_keyboard.h: $(DD_CONFIG_FILES) @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) $(eval CMD=$(QMK_BIN) generate-keyboard-h --quiet --keyboard $(KEYBOARD) --include $(FOUND_KEYBOARD_H) --output $(INTERMEDIATE_OUTPUT)/src/default_keyboard.h) @$(BUILD_CMD) |