diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | tmk_core/avr.mk | 24 | ||||
| -rw-r--r-- | tmk_core/chibios.mk | 24 |
3 files changed, 49 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore index f513ed3af..6511d7fc7 100644 --- a/.gitignore +++ b/.gitignore | |||
| @@ -4,6 +4,7 @@ | |||
| 4 | *.eep | 4 | *.eep |
| 5 | *.elf | 5 | *.elf |
| 6 | *.hex | 6 | *.hex |
| 7 | *.qmk | ||
| 7 | !util/bootloader.hex | 8 | !util/bootloader.hex |
| 8 | !quantum/tools/eeprom_reset.hex | 9 | !quantum/tools/eeprom_reset.hex |
| 9 | *.log | 10 | *.log |
diff --git a/tmk_core/avr.mk b/tmk_core/avr.mk index 0e014a412..80e8b2be6 100644 --- a/tmk_core/avr.mk +++ b/tmk_core/avr.mk | |||
| @@ -96,6 +96,30 @@ ifndef TEENSY_LOADER_CLI | |||
| 96 | endif | 96 | endif |
| 97 | endif | 97 | endif |
| 98 | 98 | ||
| 99 | # Generate a .qmk for the QMK-FF | ||
| 100 | qmk: $(BUILD_DIR)/$(TARGET).hex | ||
| 101 | zip $(TARGET).qmk -FSrj $(KEYMAP_PATH)/* | ||
| 102 | zip $(TARGET).qmk -u $< | ||
| 103 | printf "@ $<\n@=firmware.hex\n" | zipnote -w $(TARGET).qmk | ||
| 104 | printf "{\n \"generated\": \"%s\"\n}" "$$(date)" > $(BUILD_DIR)/$(TARGET).json | ||
| 105 | if [ -f $(KEYBOARD_PATH_5)/info.json ]; then \ | ||
| 106 | jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_5)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \ | ||
| 107 | fi | ||
| 108 | if [ -f $(KEYBOARD_PATH_4)/info.json ]; then \ | ||
| 109 | jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_4)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \ | ||
| 110 | fi | ||
| 111 | if [ -f $(KEYBOARD_PATH_3)/info.json ]; then \ | ||
| 112 | jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_3)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \ | ||
| 113 | fi | ||
| 114 | if [ -f $(KEYBOARD_PATH_2)/info.json ]; then \ | ||
| 115 | jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_2)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \ | ||
| 116 | fi | ||
| 117 | if [ -f $(KEYBOARD_PATH_1)/info.json ]; then \ | ||
| 118 | jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_1)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \ | ||
| 119 | fi | ||
| 120 | zip $(TARGET).qmk -urj $(BUILD_DIR)/$(TARGET).json | ||
| 121 | printf "@ $(TARGET).json\n@=info.json\n" | zipnote -w $(TARGET).qmk | ||
| 122 | |||
| 99 | # Program the device. | 123 | # Program the device. |
| 100 | program: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep | 124 | program: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep |
| 101 | $(PROGRAM_CMD) | 125 | $(PROGRAM_CMD) |
diff --git a/tmk_core/chibios.mk b/tmk_core/chibios.mk index c804d237e..4fa9fac2e 100644 --- a/tmk_core/chibios.mk +++ b/tmk_core/chibios.mk | |||
| @@ -180,6 +180,30 @@ EXTRALIBDIRS = $(RULESPATH)/ld | |||
| 180 | 180 | ||
| 181 | DFU_UTIL ?= dfu-util | 181 | DFU_UTIL ?= dfu-util |
| 182 | 182 | ||
| 183 | # Generate a .qmk for the QMK-FF | ||
| 184 | qmk: $(BUILD_DIR)/$(TARGET).bin | ||
| 185 | zip $(TARGET).qmk -FSrj $(KEYMAP_PATH)/* | ||
| 186 | zip $(TARGET).qmk -u $< | ||
| 187 | printf "@ $<\n@=firmware.bin\n" | zipnote -w $(TARGET).qmk | ||
| 188 | printf "{\n \"generated\": \"%s\"\n}" "$$(date)" > $(BUILD_DIR)/$(TARGET).json | ||
| 189 | if [ -f $(KEYBOARD_PATH_5)/info.json ]; then \ | ||
| 190 | jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_5)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \ | ||
| 191 | fi | ||
| 192 | if [ -f $(KEYBOARD_PATH_4)/info.json ]; then \ | ||
| 193 | jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_4)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \ | ||
| 194 | fi | ||
| 195 | if [ -f $(KEYBOARD_PATH_3)/info.json ]; then \ | ||
| 196 | jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_3)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \ | ||
| 197 | fi | ||
| 198 | if [ -f $(KEYBOARD_PATH_2)/info.json ]; then \ | ||
| 199 | jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_2)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \ | ||
| 200 | fi | ||
| 201 | if [ -f $(KEYBOARD_PATH_1)/info.json ]; then \ | ||
| 202 | jq -s '.[0] * .[1]' $(BUILD_DIR)/$(TARGET).json $(KEYBOARD_PATH_1)/info.json | ex -sc 'wq!$(BUILD_DIR)/$(TARGET).json' /dev/stdin; \ | ||
| 203 | fi | ||
| 204 | zip $(TARGET).qmk -urj $(BUILD_DIR)/$(TARGET).json | ||
| 205 | printf "@ $(TARGET).json\n@=info.json\n" | zipnote -w $(TARGET).qmk | ||
| 206 | |||
| 183 | dfu-util: $(BUILD_DIR)/$(TARGET).bin sizeafter | 207 | dfu-util: $(BUILD_DIR)/$(TARGET).bin sizeafter |
| 184 | $(DFU_UTIL) $(DFU_ARGS) -D $(BUILD_DIR)/$(TARGET).bin | 208 | $(DFU_UTIL) $(DFU_ARGS) -D $(BUILD_DIR)/$(TARGET).bin |
| 185 | 209 | ||
