|
|
|
@ -21,6 +21,8 @@ override SILENT := false |
|
|
|
|
|
|
|
|
|
ON_ERROR := error_occurred=1
|
|
|
|
|
|
|
|
|
|
BREAK_ON_ERRORS = no
|
|
|
|
|
|
|
|
|
|
STARTING_MAKEFILE := $(firstword $(MAKEFILE_LIST))
|
|
|
|
|
ROOT_MAKEFILE := $(lastword $(MAKEFILE_LIST))
|
|
|
|
|
ROOT_DIR := $(dir $(ROOT_MAKEFILE))
|
|
|
|
@ -462,20 +464,25 @@ endef |
|
|
|
|
|
|
|
|
|
include $(ROOT_DIR)/message.mk |
|
|
|
|
|
|
|
|
|
ifeq ($(strip $(BREAK_ON_ERRORS)), yes) |
|
|
|
|
HANDLE_ERROR = exit 1
|
|
|
|
|
else |
|
|
|
|
HANDLE_ERROR = echo $$error_occurred > $(ERROR_FILE)
|
|
|
|
|
endif |
|
|
|
|
|
|
|
|
|
# The empty line is important here, as it will force a new shell to be created for each command
|
|
|
|
|
# Otherwise the command line will become too long with a lot of keyboards and keymaps
|
|
|
|
|
define RUN_COMMAND |
|
|
|
|
+error_occurred=0;\
|
|
|
|
|
$(COMMAND_$(SILENT_MODE)_$(COMMAND))\ |
|
|
|
|
if [ $$error_occurred -gt 0 ]; then echo $$error_occurred > $(ERROR_FILE); fi; |
|
|
|
|
if [ $$error_occurred -gt 0 ]; then $(HANDLE_ERROR); fi; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
endef |
|
|
|
|
define RUN_TEST |
|
|
|
|
+error_occurred=0;\
|
|
|
|
|
$($(TEST)_COMMAND)\ |
|
|
|
|
if [ $$error_occurred -gt 0 ]; then echo $$error_occurred > $(ERROR_FILE); fi; |
|
|
|
|
|
|
|
|
|
if [ $$error_occurred -gt 0 ]; then $(HANDLE_ERROR); fi; |
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
# Allow specifying just the subproject, in the keyboard directory, which will compile all keymaps
|
|
|
|
|