Commit | Line | Data |
---|---|---|
cc68adeb | 1 | COMMON_DIR = common |
d96380e6 | 2 | PLATFORM_COMMON_DIR = $(COMMON_DIR)/$(PLATFORM_KEY) |
4d4f7684 | 3 | |
c692fd1d | 4 | TMK_COMMON_SRC += $(COMMON_DIR)/host.c \ |
cc68adeb | 5 | $(COMMON_DIR)/keyboard.c \ |
8a709c27 | 6 | $(COMMON_DIR)/action.c \ |
c69f7e10 | 7 | $(COMMON_DIR)/action_tapping.c \ |
aad91a30 | 8 | $(COMMON_DIR)/action_macro.c \ |
c6d88d27 | 9 | $(COMMON_DIR)/action_layer.c \ |
d52d5543 | 10 | $(COMMON_DIR)/action_util.c \ |
cc68adeb | 11 | $(COMMON_DIR)/print.c \ |
ea524d7b | 12 | $(COMMON_DIR)/debug.c \ |
e81c7014 | 13 | $(COMMON_DIR)/util.c \ |
4d4f7684 | 14 | $(COMMON_DIR)/eeconfig.c \ |
017458a0 | 15 | $(COMMON_DIR)/report.c \ |
4d4f7684 | 16 | $(PLATFORM_COMMON_DIR)/suspend.c \ |
17 | $(PLATFORM_COMMON_DIR)/timer.c \ | |
18 | $(PLATFORM_COMMON_DIR)/bootloader.c \ | |
19 | ||
20 | ifeq ($(PLATFORM),AVR) | |
d13ada11 | 21 | TMK_COMMON_SRC += $(PLATFORM_COMMON_DIR)/xprintf.S |
8d9c800d | 22 | else ifeq ($(PLATFORM),CHIBIOS) |
d13ada11 | 23 | TMK_COMMON_SRC += $(PLATFORM_COMMON_DIR)/printf.c |
8d9c800d | 24 | else ifeq ($(PLATFORM),ARM_ATSAM) |
d13ada11 | 25 | TMK_COMMON_SRC += $(PLATFORM_COMMON_DIR)/printf.c |
30680c6e | 26 | endif |
27 | ||
6b0c939d | 28 | # Option modules |
4ffcacd9 DJ |
29 | BOOTMAGIC_ENABLE ?= no |
30 | VALID_MAGIC_TYPES := yes full lite | |
31 | ifneq ($(strip $(BOOTMAGIC_ENABLE)), no) | |
32 | ifeq ($(filter $(BOOTMAGIC_ENABLE),$(VALID_MAGIC_TYPES)),) | |
33 | $(error BOOTMAGIC_ENABLE="$(BOOTMAGIC_ENABLE)" is not a valid type of magic) | |
34 | endif | |
35 | ifeq ($(strip $(BOOTMAGIC_ENABLE)), lite) | |
36 | TMK_COMMON_DEFS += -DBOOTMAGIC_LITE | |
789e1994 JC |
37 | TMK_COMMON_SRC += $(COMMON_DIR)/bootmagic_lite.c |
38 | ||
4ffcacd9 DJ |
39 | TMK_COMMON_DEFS += -DMAGIC_ENABLE |
40 | TMK_COMMON_SRC += $(COMMON_DIR)/magic.c | |
41 | else | |
c692fd1d FS |
42 | TMK_COMMON_DEFS += -DBOOTMAGIC_ENABLE |
43 | TMK_COMMON_SRC += $(COMMON_DIR)/bootmagic.c | |
4ffcacd9 | 44 | endif |
ab19ebd0 | 45 | else |
c692fd1d FS |
46 | TMK_COMMON_DEFS += -DMAGIC_ENABLE |
47 | TMK_COMMON_SRC += $(COMMON_DIR)/magic.c | |
ef8439bd | 48 | endif |
49 | ||
39bd760f JLW |
50 | SHARED_EP_ENABLE = no |
51 | MOUSE_SHARED_EP ?= yes | |
52 | ifeq ($(strip $(KEYBOARD_SHARED_EP)), yes) | |
53 | TMK_COMMON_DEFS += -DKEYBOARD_SHARED_EP | |
54 | SHARED_EP_ENABLE = yes | |
55 | # With the current usb_descriptor.c code, | |
56 | # you can't share kbd without sharing mouse; | |
57 | # that would be a very unexpected use case anyway | |
58 | MOUSE_SHARED_EP = yes | |
59 | endif | |
4ffcacd9 | 60 | |
bb0836c6 | 61 | ifeq ($(strip $(MOUSEKEY_ENABLE)), yes) |
c692fd1d FS |
62 | TMK_COMMON_SRC += $(COMMON_DIR)/mousekey.c |
63 | TMK_COMMON_DEFS += -DMOUSEKEY_ENABLE | |
64 | TMK_COMMON_DEFS += -DMOUSE_ENABLE | |
39bd760f JLW |
65 | |
66 | ifeq ($(strip $(MOUSE_SHARED_EP)), yes) | |
67 | TMK_COMMON_DEFS += -DMOUSE_SHARED_EP | |
68 | SHARED_EP_ENABLE = yes | |
69 | endif | |
2a562a41 | 70 | endif |
acc974c6 | 71 | |
bb0836c6 | 72 | ifeq ($(strip $(EXTRAKEY_ENABLE)), yes) |
c692fd1d | 73 | TMK_COMMON_DEFS += -DEXTRAKEY_ENABLE |
39bd760f | 74 | SHARED_EP_ENABLE = yes |
9a938eec | 75 | endif |
76 | ||
fe001d46 W |
77 | ifeq ($(strip $(RAW_ENABLE)), yes) |
78 | TMK_COMMON_DEFS += -DRAW_ENABLE | |
79 | endif | |
80 | ||
bb0836c6 | 81 | ifeq ($(strip $(CONSOLE_ENABLE)), yes) |
c692fd1d | 82 | TMK_COMMON_DEFS += -DCONSOLE_ENABLE |
9a106537 | 83 | else |
c692fd1d FS |
84 | TMK_COMMON_DEFS += -DNO_PRINT |
85 | TMK_COMMON_DEFS += -DNO_DEBUG | |
e075361b | 86 | endif |
87 | ||
bb0836c6 | 88 | ifeq ($(strip $(COMMAND_ENABLE)), yes) |
c692fd1d FS |
89 | TMK_COMMON_SRC += $(COMMON_DIR)/command.c |
90 | TMK_COMMON_DEFS += -DCOMMAND_ENABLE | |
16870412 | 91 | endif |
92 | ||
bb0836c6 | 93 | ifeq ($(strip $(NKRO_ENABLE)), yes) |
c692fd1d | 94 | TMK_COMMON_DEFS += -DNKRO_ENABLE |
39bd760f | 95 | SHARED_EP_ENABLE = yes |
b732b79b JH |
96 | endif |
97 | ||
bb0836c6 | 98 | ifeq ($(strip $(USB_6KRO_ENABLE)), yes) |
c692fd1d | 99 | TMK_COMMON_DEFS += -DUSB_6KRO_ENABLE |
ac570686 KR |
100 | endif |
101 | ||
bb0836c6 | 102 | ifeq ($(strip $(SLEEP_LED_ENABLE)), yes) |
c692fd1d FS |
103 | TMK_COMMON_SRC += $(PLATFORM_COMMON_DIR)/sleep_led.c |
104 | TMK_COMMON_DEFS += -DSLEEP_LED_ENABLE | |
105 | TMK_COMMON_DEFS += -DNO_SUSPEND_POWER_DOWN | |
f0c5f1b9 | 106 | endif |
107 | ||
f7462aaa LR |
108 | ifeq ($(strip $(NO_UART)), yes) |
109 | TMK_COMMON_DEFS += -DNO_UART | |
110 | endif | |
111 | ||
112 | ifeq ($(strip $(NO_SUSPEND_POWER_DOWN)), yes) | |
113 | TMK_COMMON_DEFS += -DNO_SUSPEND_POWER_DOWN | |
114 | endif | |
115 | ||
bb0836c6 | 116 | ifeq ($(strip $(BLUETOOTH_ENABLE)), yes) |
c692fd1d | 117 | TMK_COMMON_DEFS += -DBLUETOOTH_ENABLE |
fa1b92fb | 118 | TMK_COMMON_DEFS += -DNO_USB_STARTUP_CHECK |
c966e798 JH |
119 | endif |
120 | ||
ddc036b6 | 121 | ifeq ($(strip $(BLUETOOTH)), AdafruitBLE) |
fa1b92fb | 122 | TMK_COMMON_DEFS += -DBLUETOOTH_ENABLE |
123 | TMK_COMMON_DEFS += -DMODULE_ADAFRUIT_BLE | |
124 | TMK_COMMON_DEFS += -DNO_USB_STARTUP_CHECK | |
ddc036b6 TLM |
125 | endif |
126 | ||
127 | ifeq ($(strip $(BLUETOOTH)), AdafruitEZKey) | |
fa1b92fb | 128 | TMK_COMMON_DEFS += -DBLUETOOTH_ENABLE |
129 | TMK_COMMON_DEFS += -DMODULE_ADAFRUIT_EZKEY | |
130 | TMK_COMMON_DEFS += -DNO_USB_STARTUP_CHECK | |
ddc036b6 TLM |
131 | endif |
132 | ||
71da0139 | 133 | ifeq ($(strip $(BLUETOOTH)), RN42) |
fa1b92fb | 134 | TMK_COMMON_DEFS += -DBLUETOOTH_ENABLE |
135 | TMK_COMMON_DEFS += -DMODULE_RN42 | |
136 | TMK_COMMON_DEFS += -DNO_USB_STARTUP_CHECK | |
71da0139 TLM |
137 | endif |
138 | ||
dd378601 | 139 | ifeq ($(strip $(ONEHAND_ENABLE)), yes) |
7230923b JW |
140 | SWAP_HANDS_ENABLE = yes # backwards compatibility |
141 | endif | |
142 | ifeq ($(strip $(SWAP_HANDS_ENABLE)), yes) | |
143 | TMK_COMMON_DEFS += -DSWAP_HANDS_ENABLE | |
dd378601 JW |
144 | endif |
145 | ||
fa1b92fb | 146 | ifeq ($(strip $(NO_USB_STARTUP_CHECK)), yes) |
147 | TMK_COMMON_DEFS += -DNO_USB_STARTUP_CHECK | |
148 | endif | |
149 | ||
39bd760f JLW |
150 | ifeq ($(strip $(SHARED_EP_ENABLE)), yes) |
151 | TMK_COMMON_DEFS += -DSHARED_EP_ENABLE | |
152 | endif | |
153 | ||
29630e6e DJ |
154 | ifeq ($(strip $(LTO_ENABLE)), yes) |
155 | LINK_TIME_OPTIMIZATION_ENABLE = yes | |
156 | endif | |
7e655a20 DJ |
157 | |
158 | ifeq ($(strip $(LINK_TIME_OPTIMIZATION_ENABLE)), yes) | |
26eef35f JY |
159 | ifeq ($(PLATFORM),CHIBIOS) |
160 | $(info Enabling LTO on ChibiOS-targeting boards is known to have a high likelihood of failure.) | |
161 | $(info If unsure, set LINK_TIME_OPTIMIZATION_ENABLE = no.) | |
162 | endif | |
7e655a20 DJ |
163 | EXTRAFLAGS += -flto |
164 | TMK_COMMON_DEFS += -DLINK_TIME_OPTIMIZATION_ENABLE | |
165 | TMK_COMMON_DEFS += -DNO_ACTION_MACRO | |
166 | TMK_COMMON_DEFS += -DNO_ACTION_FUNCTION | |
167 | endif | |
26eef35f | 168 | |
e67c9888 | 169 | # Search Path |
d9e4dad0 | 170 | VPATH += $(TMK_PATH)/$(COMMON_DIR) |
d96380e6 | 171 | VPATH += $(TMK_PATH)/$(PLATFORM_COMMON_DIR) |