aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFred Sundvik <fsundvik@gmail.com>2016-08-21 17:14:38 +0300
committerFred Sundvik <fsundvik@gmail.com>2016-08-27 21:57:49 +0300
commit27a673f5cf75747fe73641059aae60e9b53a1c78 (patch)
treefaf15b5c6055568689534478f5306cd4fe4be459
parent6d7cd639a5e4503f00162c7cfa4bc7302b82c71c (diff)
downloadqmk_firmware-27a673f5cf75747fe73641059aae60e9b53a1c78.tar.gz
qmk_firmware-27a673f5cf75747fe73641059aae60e9b53a1c78.zip
The makefile actually calls build_test
-rw-r--r--Makefile22
-rw-r--r--build_keyboard.mk14
-rw-r--r--build_test.mk5
-rw-r--r--common.mk12
-rw-r--r--message.mk7
5 files changed, 42 insertions, 18 deletions
diff --git a/Makefile b/Makefile
index 16e90f8e4..67b981d51 100644
--- a/Makefile
+++ b/Makefile
@@ -358,7 +358,6 @@ define PARSE_KEYMAP
358 MAKE_TARGET := $$(patsubst -%,%,$$(RULE)) 358 MAKE_TARGET := $$(patsubst -%,%,$$(RULE))
359 # We need to generate an unique indentifer to append to the COMMANDS list 359 # We need to generate an unique indentifer to append to the COMMANDS list
360 COMMAND := COMMAND_KEYBOARD_$$(CURRENT_KB)_SUBPROJECT_$(CURRENT_SP)_KEYMAP_$$(CURRENT_KM) 360 COMMAND := COMMAND_KEYBOARD_$$(CURRENT_KB)_SUBPROJECT_$(CURRENT_SP)_KEYMAP_$$(CURRENT_KM)
361 COMMANDS += $$(COMMAND)
362 # If we are compiling a keyboard without a subproject, we want to display just the name 361 # If we are compiling a keyboard without a subproject, we want to display just the name
363 # of the keyboard, otherwise keyboard/subproject 362 # of the keyboard, otherwise keyboard/subproject
364 ifeq ($$(CURRENT_SP),) 363 ifeq ($$(CURRENT_SP),)
@@ -370,13 +369,18 @@ define PARSE_KEYMAP
370 KB_SP := $(BOLD)$$(KB_SP)$(NO_COLOR) 369 KB_SP := $(BOLD)$$(KB_SP)$(NO_COLOR)
371 # Specify the variables that we are passing forward to submake 370 # Specify the variables that we are passing forward to submake
372 MAKE_VARS := KEYBOARD=$$(CURRENT_KB) SUBPROJECT=$$(CURRENT_SP) KEYMAP=$$(CURRENT_KM) 371 MAKE_VARS := KEYBOARD=$$(CURRENT_KB) SUBPROJECT=$$(CURRENT_SP) KEYMAP=$$(CURRENT_KM)
373 MAKE_VARS += VERBOSE=$(VERBOSE) COLOR=$(COLOR)
374 # And the first part of the make command 372 # And the first part of the make command
375 MAKE_CMD := $$(MAKE) -r -R -C $(ROOT_DIR) -f build_keyboard.mk $$(MAKE_TARGET) 373 MAKE_CMD := $$(MAKE) -r -R -C $(ROOT_DIR) -f build_keyboard.mk $$(MAKE_TARGET)
376 # The message to display 374 # The message to display
377 MAKE_MSG := $$(MSG_MAKE_KB) 375 MAKE_MSG := $$(MSG_MAKE_KB)
378 # We run the command differently, depending on if we want more output or not 376 # We run the command differently, depending on if we want more output or not
379 # The true version for silent output and the false version otherwise 377 # The true version for silent output and the false version otherwise
378 $$(eval $$(call BUILD))
379endef
380
381define BUILD
382 MAKE_VARS += VERBOSE=$(VERBOSE) COLOR=$(COLOR)
383 COMMANDS += $$(COMMAND)
380 COMMAND_true_$$(COMMAND) := \ 384 COMMAND_true_$$(COMMAND) := \
381 printf "$$(MAKE_MSG)" | \ 385 printf "$$(MAKE_MSG)" | \
382 $$(MAKE_MSG_FORMAT); \ 386 $$(MAKE_MSG_FORMAT); \
@@ -398,13 +402,21 @@ define PARSE_ALL_KEYMAPS
398 $$(eval $$(call PARSE_ALL_IN_LIST,PARSE_KEYMAP,$$(KEYMAPS))) 402 $$(eval $$(call PARSE_ALL_IN_LIST,PARSE_KEYMAP,$$(KEYMAPS)))
399endef 403endef
400 404
405define BUILD_TEST
406 TEST_NAME := $1
407 MAKE_TARGET := $2
408 COMMAND := $1
409 MAKE_CMD := $$(MAKE) -r -R -C $(ROOT_DIR) -f build_test.mk $$(MAKE_TARGET)
410 MAKE_VARS := TEST=$$(TEST_NAME)
411 MAKE_MSG := $$(MSG_MAKE_TEST)
412 $$(eval $$(call BUILD))
413endef
414
401define PARSE_TEST 415define PARSE_TEST
402 TEST_NAME := $$(firstword $$(subst -, ,$$(RULE))) 416 TEST_NAME := $$(firstword $$(subst -, ,$$(RULE)))
403 TEST_TARGET := $$(subst $$(TEST_NAME),,$$(subst $$(TEST_NAME)-,,$$(RULE))) 417 TEST_TARGET := $$(subst $$(TEST_NAME),,$$(subst $$(TEST_NAME)-,,$$(RULE)))
404 MATCHED_TESTS := $$(foreach TEST,$$(TEST_LIST),$$(if $$(findstring $$(TEST_NAME),$$(TEST)),$$(TEST),)) 418 MATCHED_TESTS := $$(foreach TEST,$$(TEST_LIST),$$(if $$(findstring $$(TEST_NAME),$$(TEST)),$$(TEST),))
405 $$(info Test name $$(TEST_NAME)) 419 $$(foreach TEST,$$(MATCHED_TESTS),$$(eval $$(call BUILD_TEST,$$(TEST),$$(TEST_TARGET))))
406 $$(info Test target $$(TEST_TARGET))
407 $$(info $$(MATCHED_TESTS))
408endef 420endef
409 421
410 422
diff --git a/build_keyboard.mk b/build_keyboard.mk
index f843572f6..bbe571845 100644
--- a/build_keyboard.mk
+++ b/build_keyboard.mk
@@ -4,19 +4,7 @@ endif
4 4
5.DEFAULT_GOAL := all 5.DEFAULT_GOAL := all
6 6
7include message.mk 7include common.mk
8
9
10# Directory common source filess exist
11TOP_DIR = .
12TMK_DIR = tmk_core
13TMK_PATH = $(TOP_DIR)/$(TMK_DIR)
14LIB_PATH = $(TOP_DIR)/lib
15
16QUANTUM_DIR = quantum
17QUANTUM_PATH = $(TOP_DIR)/$(QUANTUM_DIR)
18
19BUILD_DIR := $(TOP_DIR)/.build
20 8
21ifneq ($(SUBPROJECT),) 9ifneq ($(SUBPROJECT),)
22 TARGET ?= $(KEYBOARD)_$(SUBPROJECT)_$(KEYMAP) 10 TARGET ?= $(KEYBOARD)_$(SUBPROJECT)_$(KEYMAP)
diff --git a/build_test.mk b/build_test.mk
new file mode 100644
index 000000000..37ed8b568
--- /dev/null
+++ b/build_test.mk
@@ -0,0 +1,5 @@
1include common.mk
2
3
4all:
5 echo Done $(TEST) \ No newline at end of file
diff --git a/common.mk b/common.mk
new file mode 100644
index 000000000..689fdf5a5
--- /dev/null
+++ b/common.mk
@@ -0,0 +1,12 @@
1include message.mk
2
3# Directory common source files exist
4TOP_DIR = .
5TMK_DIR = tmk_core
6TMK_PATH = $(TOP_DIR)/$(TMK_DIR)
7LIB_PATH = $(TOP_DIR)/lib
8
9QUANTUM_DIR = quantum
10QUANTUM_PATH = $(TOP_DIR)/$(QUANTUM_DIR)
11
12BUILD_DIR := $(TOP_DIR)/.build \ No newline at end of file
diff --git a/message.mk b/message.mk
index fb1a7a1f9..96814986b 100644
--- a/message.mk
+++ b/message.mk
@@ -69,3 +69,10 @@ define GENERATE_MSG_MAKE_KB
69 endif 69 endif
70endef 70endef
71MSG_MAKE_KB = $(eval $(call GENERATE_MSG_MAKE_KB))$(MSG_MAKE_KB_ACTUAL) 71MSG_MAKE_KB = $(eval $(call GENERATE_MSG_MAKE_KB))$(MSG_MAKE_KB_ACTUAL)
72define GENERATE_MSG_MAKE_TEST
73 MSG_MAKE_TEST_ACTUAL := Making test $(BOLD)$(TEST_NAME)$(NO_COLOR)
74 ifneq ($$(MAKE_TARGET),)
75 MSG_MAKE_TEST_ACTUAL += with target $(BOLD)$$(MAKE_TARGET)$(NO_COLOR)
76 endif
77endef
78MSG_MAKE_TEST = $(eval $(call GENERATE_MSG_MAKE_TEST))$(MSG_MAKE_TEST_ACTUAL)