|
|
@@ -94,20 +94,30 @@ define PARSE_ALL_IN_LIST
|
|
|
$$(foreach ITEM$1,$2,$$(eval $$(call ALL_IN_LIST_LOOP,$1)))
|
|
|
endef
|
|
|
|
|
|
-define PARSE_ALL_KEYBOARDS
|
|
|
- $$(eval $$(call PARSE_ALL_IN_LIST,PARSE_KEYBOARD,$(KEYBOARDS)))
|
|
|
+define PARSE_RULE
|
|
|
+ RULE := $1
|
|
|
+ COMMANDS :=
|
|
|
+ ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,allkb),true)
|
|
|
+ $$(eval $$(call PARSE_ALL_KEYBOARDS))
|
|
|
+ else ifeq ($$(call TRY_TO_MATCH_RULE_FROM_LIST,$$(KEYBOARDS)),true)
|
|
|
+ $$(eval $$(call PARSE_KEYBOARD,$$(MATCHED_ITEM)))
|
|
|
+ endif
|
|
|
endef
|
|
|
|
|
|
-define PARSE_ALL_KEYMAPS
|
|
|
- $$(eval $$(call PARSE_ALL_IN_LIST,PARSE_KEYMAP,$$(KEYMAPS)))
|
|
|
+# $1 = Keyboard
|
|
|
+define PARSE_KEYBOARD
|
|
|
+ CURRENT_KB := $1
|
|
|
+ # A subproject is any keyboard subfolder with a makefile
|
|
|
+ SUBPROJECTS := $$(notdir $$(patsubst %/Makefile,%,$$(wildcard $(ROOT_DIR)/keyboards/$$(CURRENT_KB)/*/Makefile)))
|
|
|
+ ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,allsp),true)
|
|
|
+ $$(eval $$(call PARSE_ALL_SUBPROJECTS))
|
|
|
+ else ifeq ($$(call TRY_TO_MATCH_RULE_FROM_LIST,$$(SUBPROJECTS)),true)
|
|
|
+ $$(eval $$(call PARSE_SUBPROJECT,$$(MATCHED_ITEM)))
|
|
|
+ endif
|
|
|
endef
|
|
|
|
|
|
-define PARSE_ALL_SUBPROJECTS
|
|
|
- ifeq ($$(SUBPROJECTS),)
|
|
|
- $$(eval $$(call PARSE_SUBPROJECT,))
|
|
|
- else
|
|
|
- $$(eval $$(call PARSE_ALL_IN_LIST,PARSE_SUBPROJECT,$$(SUBPROJECTS)))
|
|
|
- endif
|
|
|
+define PARSE_ALL_KEYBOARDS
|
|
|
+ $$(eval $$(call PARSE_ALL_IN_LIST,PARSE_KEYBOARD,$(KEYBOARDS)))
|
|
|
endef
|
|
|
|
|
|
# $1 Subproject
|
|
|
@@ -121,15 +131,11 @@ define PARSE_SUBPROJECT
|
|
|
endif
|
|
|
endef
|
|
|
|
|
|
-# $1 = Keyboard
|
|
|
-define PARSE_KEYBOARD
|
|
|
- CURRENT_KB := $1
|
|
|
- # A subproject is any keyboard subfolder with a makefile
|
|
|
- SUBPROJECTS := $$(notdir $$(patsubst %/Makefile,%,$$(wildcard $(ROOT_DIR)/keyboards/$$(CURRENT_KB)/*/Makefile)))
|
|
|
- ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,allsp),true)
|
|
|
- $$(eval $$(call PARSE_ALL_SUBPROJECTS))
|
|
|
- else ifeq ($$(call TRY_TO_MATCH_RULE_FROM_LIST,$$(SUBPROJECTS)),true)
|
|
|
- $$(eval $$(call PARSE_SUBPROJECT,$$(MATCHED_ITEM)))
|
|
|
+define PARSE_ALL_SUBPROJECTS
|
|
|
+ ifeq ($$(SUBPROJECTS),)
|
|
|
+ $$(eval $$(call PARSE_SUBPROJECT,))
|
|
|
+ else
|
|
|
+ $$(eval $$(call PARSE_ALL_IN_LIST,PARSE_SUBPROJECT,$$(SUBPROJECTS)))
|
|
|
endif
|
|
|
endef
|
|
|
|
|
|
@@ -140,14 +146,8 @@ define PARSE_KEYMAP
|
|
|
COMMAND_KEYBOARD_$$(CURRENT_KB)_SUBPROJECT_$(CURRENT_SP)_KEYMAP_$$(CURRENT_KM) := Keyboard $$(CURRENT_KB), Subproject $$(CURRENT_SP), Keymap $$(CURRENT_KM)
|
|
|
endef
|
|
|
|
|
|
-define PARSE_RULE
|
|
|
- RULE := $1
|
|
|
- COMMANDS :=
|
|
|
- ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,allkb),true)
|
|
|
- $$(eval $$(call PARSE_ALL_KEYBOARDS))
|
|
|
- else ifeq ($$(call TRY_TO_MATCH_RULE_FROM_LIST,$$(KEYBOARDS)),true)
|
|
|
- $$(eval $$(call PARSE_KEYBOARD,$$(MATCHED_ITEM)))
|
|
|
- endif
|
|
|
+define PARSE_ALL_KEYMAPS
|
|
|
+ $$(eval $$(call PARSE_ALL_IN_LIST,PARSE_KEYMAP,$$(KEYMAPS)))
|
|
|
endef
|
|
|
|
|
|
RUN_COMMAND = echo "Running": $(COMMAND_$(COMMAND));
|