diff options
| -rw-r--r-- | Makefile | 15 | ||||
| -rw-r--r-- | builddefs/build_keyboard.mk | 12 | ||||
| -rwxr-xr-x | lib/python/qmk/cli/mass_compile.py | 2 | ||||
| -rwxr-xr-x | lib/python/qmk/cli/multibuild.py | 2 |
4 files changed, 3 insertions, 28 deletions
| @@ -124,24 +124,11 @@ endef | |||
| 124 | define PARSE_RULE | 124 | define PARSE_RULE |
| 125 | RULE := $1 | 125 | RULE := $1 |
| 126 | COMMANDS := | 126 | COMMANDS := |
| 127 | REQUIRE_PLATFORM_KEY := | ||
| 128 | # If the rule starts with all, then continue the parsing from | 127 | # If the rule starts with all, then continue the parsing from |
| 129 | # PARSE_ALL_KEYBOARDS | 128 | # PARSE_ALL_KEYBOARDS |
| 130 | ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,all),true) | 129 | ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,all),true) |
| 131 | KEYBOARD_RULE=all | 130 | KEYBOARD_RULE=all |
| 132 | $$(eval $$(call PARSE_ALL_KEYBOARDS)) | 131 | $$(eval $$(call PARSE_ALL_KEYBOARDS)) |
| 133 | else ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,all-avr),true) | ||
| 134 | KEYBOARD_RULE=all | ||
| 135 | REQUIRE_PLATFORM_KEY := avr | ||
| 136 | $$(eval $$(call PARSE_ALL_KEYBOARDS)) | ||
| 137 | else ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,all-chibios),true) | ||
| 138 | KEYBOARD_RULE=all | ||
| 139 | REQUIRE_PLATFORM_KEY := chibios | ||
| 140 | $$(eval $$(call PARSE_ALL_KEYBOARDS)) | ||
| 141 | else ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,all-arm_atsam),true) | ||
| 142 | KEYBOARD_RULE=all | ||
| 143 | REQUIRE_PLATFORM_KEY := arm_atsam | ||
| 144 | $$(eval $$(call PARSE_ALL_KEYBOARDS)) | ||
| 145 | else ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,test),true) | 132 | else ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,test),true) |
| 146 | $$(eval $$(call PARSE_TEST)) | 133 | $$(eval $$(call PARSE_TEST)) |
| 147 | # If the rule starts with the name of a known keyboard, then continue | 134 | # If the rule starts with the name of a known keyboard, then continue |
| @@ -271,7 +258,7 @@ define PARSE_KEYMAP | |||
| 271 | # Format it in bold | 258 | # Format it in bold |
| 272 | KB_SP := $(BOLD)$$(KB_SP)$(NO_COLOR) | 259 | KB_SP := $(BOLD)$$(KB_SP)$(NO_COLOR) |
| 273 | # Specify the variables that we are passing forward to submake | 260 | # Specify the variables that we are passing forward to submake |
| 274 | MAKE_VARS := KEYBOARD=$$(CURRENT_KB) KEYMAP=$$(CURRENT_KM) REQUIRE_PLATFORM_KEY=$$(REQUIRE_PLATFORM_KEY) QMK_BIN=$$(QMK_BIN) | 261 | MAKE_VARS := KEYBOARD=$$(CURRENT_KB) KEYMAP=$$(CURRENT_KM) QMK_BIN=$$(QMK_BIN) |
| 275 | # And the first part of the make command | 262 | # And the first part of the make command |
| 276 | MAKE_CMD := $$(MAKE) -r -R -C $(ROOT_DIR) -f $(BUILDDEFS_PATH)/build_keyboard.mk $$(MAKE_TARGET) | 263 | MAKE_CMD := $$(MAKE) -r -R -C $(ROOT_DIR) -f $(BUILDDEFS_PATH)/build_keyboard.mk $$(MAKE_TARGET) |
| 277 | # The message to display | 264 | # The message to display |
diff --git a/builddefs/build_keyboard.mk b/builddefs/build_keyboard.mk index 8999ac80ad..ec0336f7c3 100644 --- a/builddefs/build_keyboard.mk +++ b/builddefs/build_keyboard.mk | |||
| @@ -433,13 +433,6 @@ SRC += $(TMK_COMMON_SRC) | |||
| 433 | OPT_DEFS += $(TMK_COMMON_DEFS) | 433 | OPT_DEFS += $(TMK_COMMON_DEFS) |
| 434 | EXTRALDFLAGS += $(TMK_COMMON_LDFLAGS) | 434 | EXTRALDFLAGS += $(TMK_COMMON_LDFLAGS) |
| 435 | 435 | ||
| 436 | SKIP_COMPILE := no | ||
| 437 | ifneq ($(REQUIRE_PLATFORM_KEY),) | ||
| 438 | ifneq ($(REQUIRE_PLATFORM_KEY),$(PLATFORM_KEY)) | ||
| 439 | SKIP_COMPILE := yes | ||
| 440 | endif | ||
| 441 | endif | ||
| 442 | |||
| 443 | -include $(PLATFORM_PATH)/$(PLATFORM_KEY)/bootloader.mk | 436 | -include $(PLATFORM_PATH)/$(PLATFORM_KEY)/bootloader.mk |
| 444 | include $(PLATFORM_PATH)/$(PLATFORM_KEY)/platform.mk | 437 | include $(PLATFORM_PATH)/$(PLATFORM_KEY)/platform.mk |
| 445 | -include $(PLATFORM_PATH)/$(PLATFORM_KEY)/flash.mk | 438 | -include $(PLATFORM_PATH)/$(PLATFORM_KEY)/flash.mk |
| @@ -479,12 +472,7 @@ $(KEYBOARD_OUTPUT)_INC := $(PROJECT_INC) | |||
| 479 | $(KEYBOARD_OUTPUT)_CONFIG := $(PROJECT_CONFIG) | 472 | $(KEYBOARD_OUTPUT)_CONFIG := $(PROJECT_CONFIG) |
| 480 | 473 | ||
| 481 | # Default target. | 474 | # Default target. |
| 482 | ifeq ($(SKIP_COMPILE),no) | ||
| 483 | all: build check-size | 475 | all: build check-size |
| 484 | else | ||
| 485 | all: | ||
| 486 | echo "skipped" >&2 | ||
| 487 | endif | ||
| 488 | 476 | ||
| 489 | build: elf cpfirmware | 477 | build: elf cpfirmware |
| 490 | check-size: build | 478 | check-size: build |
diff --git a/lib/python/qmk/cli/mass_compile.py b/lib/python/qmk/cli/mass_compile.py index a98f7ad482..d8dda0cac3 100755 --- a/lib/python/qmk/cli/mass_compile.py +++ b/lib/python/qmk/cli/mass_compile.py | |||
| @@ -134,7 +134,7 @@ all: {keyboard_safe}_{keymap_name}_binary | |||
| 134 | {keyboard_safe}_{keymap_name}_binary: | 134 | {keyboard_safe}_{keymap_name}_binary: |
| 135 | @rm -f "{QMK_FIRMWARE}/.build/failed.log.{keyboard_safe}.{keymap_name}" || true | 135 | @rm -f "{QMK_FIRMWARE}/.build/failed.log.{keyboard_safe}.{keymap_name}" || true |
| 136 | @echo "Compiling QMK Firmware for target: '{keyboard_name}:{keymap_name}'..." >>"{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}" | 136 | @echo "Compiling QMK Firmware for target: '{keyboard_name}:{keymap_name}'..." >>"{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}" |
| 137 | +@$(MAKE) -C "{QMK_FIRMWARE}" -f "{QMK_FIRMWARE}/builddefs/build_keyboard.mk" KEYBOARD="{keyboard_name}" KEYMAP="{keymap_name}" REQUIRE_PLATFORM_KEY= COLOR=true SILENT=false {' '.join(cli.args.env)} \\ | 137 | +@$(MAKE) -C "{QMK_FIRMWARE}" -f "{QMK_FIRMWARE}/builddefs/build_keyboard.mk" KEYBOARD="{keyboard_name}" KEYMAP="{keymap_name}" COLOR=true SILENT=false {' '.join(cli.args.env)} \\ |
| 138 | >>"{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}.{keymap_name}" 2>&1 \\ | 138 | >>"{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}.{keymap_name}" 2>&1 \\ |
| 139 | || cp "{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}.{keymap_name}" "{QMK_FIRMWARE}/.build/failed.log.{os.getpid()}.{keyboard_safe}.{keymap_name}" | 139 | || cp "{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}.{keymap_name}" "{QMK_FIRMWARE}/.build/failed.log.{os.getpid()}.{keyboard_safe}.{keymap_name}" |
| 140 | @{{ grep '\[ERRORS\]' "{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}.{keymap_name}" >/dev/null 2>&1 && printf "Build %-64s \e[1;31m[ERRORS]\e[0m\\n" "{keyboard_name}:{keymap_name}" ; }} \\ | 140 | @{{ grep '\[ERRORS\]' "{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}.{keymap_name}" >/dev/null 2>&1 && printf "Build %-64s \e[1;31m[ERRORS]\e[0m\\n" "{keyboard_name}:{keymap_name}" ; }} \\ |
diff --git a/lib/python/qmk/cli/multibuild.py b/lib/python/qmk/cli/multibuild.py index 5e0f0b5188..22b68f43c8 100755 --- a/lib/python/qmk/cli/multibuild.py +++ b/lib/python/qmk/cli/multibuild.py | |||
| @@ -71,7 +71,7 @@ all: {keyboard_safe}_binary | |||
| 71 | {keyboard_safe}_binary: | 71 | {keyboard_safe}_binary: |
| 72 | @rm -f "{QMK_FIRMWARE}/.build/failed.log.{keyboard_safe}" || true | 72 | @rm -f "{QMK_FIRMWARE}/.build/failed.log.{keyboard_safe}" || true |
| 73 | @echo "Compiling QMK Firmware for target: '{keyboard_name}:{cli.args.keymap}'..." >>"{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}" | 73 | @echo "Compiling QMK Firmware for target: '{keyboard_name}:{cli.args.keymap}'..." >>"{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}" |
| 74 | +@$(MAKE) -C "{QMK_FIRMWARE}" -f "{QMK_FIRMWARE}/builddefs/build_keyboard.mk" KEYBOARD="{keyboard_name}" KEYMAP="{cli.args.keymap}" REQUIRE_PLATFORM_KEY= COLOR=true SILENT=false {' '.join(cli.args.env)} \\ | 74 | +@$(MAKE) -C "{QMK_FIRMWARE}" -f "{QMK_FIRMWARE}/builddefs/build_keyboard.mk" KEYBOARD="{keyboard_name}" KEYMAP="{cli.args.keymap}" COLOR=true SILENT=false {' '.join(cli.args.env)} \\ |
| 75 | >>"{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}" 2>&1 \\ | 75 | >>"{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}" 2>&1 \\ |
| 76 | || cp "{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}" "{QMK_FIRMWARE}/.build/failed.log.{os.getpid()}.{keyboard_safe}" | 76 | || cp "{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}" "{QMK_FIRMWARE}/.build/failed.log.{os.getpid()}.{keyboard_safe}" |
| 77 | @{{ grep '\[ERRORS\]' "{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}" >/dev/null 2>&1 && printf "Build %-64s \e[1;31m[ERRORS]\e[0m\\n" "{keyboard_name}:{cli.args.keymap}" ; }} \\ | 77 | @{{ grep '\[ERRORS\]' "{QMK_FIRMWARE}/.build/build.log.{os.getpid()}.{keyboard_safe}" >/dev/null 2>&1 && printf "Build %-64s \e[1;31m[ERRORS]\e[0m\\n" "{keyboard_name}:{cli.args.keymap}" ; }} \\ |
