X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Makefile;h=610f53b4d42d3cbc15fb846b704e74582f2495b5;hb=154e1d99c398e343a6b23081e7a4ccb6e2073a8d;hp=45e47c003710b7d568bf504d8a7653db1c7efe1f;hpb=2e0c63e0afcc128ae3865864d33f01a4e94ab218;p=qmk_firmware.git diff --git a/Makefile b/Makefile index 45e47c003..610f53b4d 100644 --- a/Makefile +++ b/Makefile @@ -112,23 +112,29 @@ $(eval $(call GET_KEYBOARDS)) # Only consider folders with makefiles, to prevent errors in case there are extra folders #KEYBOARDS += $(patsubst $(ROOD_DIR)/keyboards/%/rules.mk,%,$(wildcard $(ROOT_DIR)/keyboards/*/*/rules.mk)) +.PHONY: list-keyboards list-keyboards: echo $(KEYBOARDS) - exit 0 define PRINT_KEYBOARD $(info $(PRINTING_KEYBOARD)) endef +.PHONY: generate-keyboards-file generate-keyboards-file: $(foreach PRINTING_KEYBOARD,$(KEYBOARDS),$(eval $(call PRINT_KEYBOARD))) - exit 0 +.PHONY: clean clean: - echo -n 'Deleting .build ... ' + echo -n 'Deleting .build/ ... ' rm -rf $(BUILD_DIR) - echo 'done' - exit 0 + echo 'done.' + +.PHONY: distclean +distclean: clean + echo -n 'Deleting *.bin and *.hex ... ' + rm -f *.bin *.hex + echo 'done.' #Compatibility with the old make variables, anything you specify directly on the command line # always overrides the detected folders @@ -548,9 +554,10 @@ endif # it has to be there to allow parallel execution of the submake # This always tries to compile everything, even if error occurs in the middle # But we return the error code at the end, to trigger travis failures - $(foreach COMMAND,$(COMMANDS),$(RUN_COMMAND)) + # The sort at this point is to remove duplicates + $(foreach COMMAND,$(sort $(COMMANDS)),$(RUN_COMMAND)) if [ -f $(ERROR_FILE) ]; then printf "$(MSG_ERRORS)" & exit 1; fi; - $(foreach TEST,$(TESTS),$(RUN_TEST)) + $(foreach TEST,$(sort $(TESTS)),$(RUN_TEST)) if [ -f $(ERROR_FILE) ]; then printf "$(MSG_ERRORS)" & exit 1; fi; # These no longer work because of the colon system @@ -576,6 +583,7 @@ lib/%: git submodule sync $? git submodule update --init $? +.PHONY: git-submodule git-submodule: git submodule sync --recursive git submodule update --init --recursive --progress