Add yet another dictionary for the QMK Firmware docs sidebar heading (#7504)
[jackhill/qmk/firmware.git] / build_test.mk
CommitLineData
8a9aac6e
FS
1ifndef VERBOSE
2.SILENT:
3endif
4
5.DEFAULT_GOAL := all
6
27a673f5
FS
7include common.mk
8
8a9aac6e
FS
9TARGET=test/$(TEST)
10
11GTEST_OUTPUT = $(BUILD_DIR)/gtest
12
0a114601
FS
13TEST_OBJ = $(BUILD_DIR)/test_obj
14
15OUTPUTS := $(TEST_OBJ)/$(TEST) $(GTEST_OUTPUT)
8a9aac6e
FS
16
17GTEST_INC := \
18 $(LIB_PATH)/googletest/googletest/include\
19 $(LIB_PATH)/googletest/googlemock/include\
20
21GTEST_INTERNAL_INC :=\
22 $(LIB_PATH)/googletest/googletest\
23 $(LIB_PATH)/googletest/googlemock
24
25$(GTEST_OUTPUT)_SRC :=\
26 googletest/src/gtest-all.cc\
27 googletest/src/gtest_main.cc\
28 googlemock/src/gmock-all.cc
29
30$(GTEST_OUTPUT)_DEFS :=
31$(GTEST_OUTPUT)_INC := $(GTEST_INC) $(GTEST_INTERNAL_INC)
32
33LDFLAGS += -lstdc++ -lpthread -shared-libgcc
42baa6cf 34CREATE_MAP := no
8a9aac6e
FS
35
36VPATH +=\
37 $(LIB_PATH)/googletest\
38 $(LIB_PATH)/googlemock
39
40all: elf
41
c692fd1d 42VPATH += $(COMMON_VPATH)
d29906cb 43PLATFORM:=TEST
c692fd1d 44
1c0fe956
FS
45ifneq ($(filter $(FULL_TESTS),$(TEST)),)
46include tests/$(TEST)/rules.mk
47endif
48
49include common_features.mk
c692fd1d 50include $(TMK_PATH)/common.mk
0a114601 51include $(QUANTUM_PATH)/serial_link/tests/rules.mk
30f22d45
FS
52ifneq ($(filter $(FULL_TESTS),$(TEST)),)
53include build_full_test.mk
54endif
0a114601
FS
55
56$(TEST_OBJ)/$(TEST)_SRC := $($(TEST)_SRC)
57$(TEST_OBJ)/$(TEST)_INC := $($(TEST)_INC) $(VPATH) $(GTEST_INC)
58$(TEST_OBJ)/$(TEST)_DEFS := $($(TEST)_DEFS)
8674f9c4 59$(TEST_OBJ)/$(TEST)_CONFIG := $($(TEST)_CONFIG)
0a114601 60
8a9aac6e
FS
61include $(TMK_PATH)/native.mk
62include $(TMK_PATH)/rules.mk
63
0a114601
FS
64
65$(shell mkdir -p $(BUILD_DIR)/test 2>/dev/null)
66$(shell mkdir -p $(TEST_OBJ) 2>/dev/null)
27a673f5 67