2 PLATFORM_COMMON_DIR
= $(COMMON_DIR
)/$(PLATFORM_KEY
)
4 TMK_COMMON_SRC
+= $(COMMON_DIR
)/host.c \
5 $(COMMON_DIR
)/keyboard.c \
6 $(COMMON_DIR
)/action.c \
7 $(COMMON_DIR
)/action_tapping.c \
8 $(COMMON_DIR
)/action_macro.c \
9 $(COMMON_DIR
)/action_layer.c \
10 $(COMMON_DIR
)/action_util.c \
11 $(COMMON_DIR
)/print.c \
12 $(COMMON_DIR
)/debug.c \
13 $(COMMON_DIR
)/util.c \
14 $(COMMON_DIR
)/eeconfig.c \
15 $(COMMON_DIR
)/report.c \
16 $(PLATFORM_COMMON_DIR
)/suspend.c \
17 $(PLATFORM_COMMON_DIR
)/timer.c \
18 $(PLATFORM_COMMON_DIR
)/bootloader.c \
20 ifeq ($(PLATFORM
),AVR
)
21 TMK_COMMON_SRC
+= $(PLATFORM_COMMON_DIR
)/xprintf.S
22 else ifeq ($(PLATFORM
),CHIBIOS
)
23 TMK_COMMON_SRC
+= $(PLATFORM_COMMON_DIR
)/printf.c
24 else ifeq ($(PLATFORM
),ARM_ATSAM
)
25 TMK_COMMON_SRC
+= $(PLATFORM_COMMON_DIR
)/printf.c
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
)
35 ifeq ($(strip $(BOOTMAGIC_ENABLE
)), lite
)
36 TMK_COMMON_DEFS
+= -DBOOTMAGIC_LITE
37 TMK_COMMON_SRC
+= $(COMMON_DIR
)/bootmagic_lite.c
39 TMK_COMMON_DEFS
+= -DMAGIC_ENABLE
40 TMK_COMMON_SRC
+= $(COMMON_DIR
)/magic.c
42 TMK_COMMON_DEFS
+= -DBOOTMAGIC_ENABLE
43 TMK_COMMON_SRC
+= $(COMMON_DIR
)/bootmagic.c
46 TMK_COMMON_DEFS
+= -DMAGIC_ENABLE
47 TMK_COMMON_SRC
+= $(COMMON_DIR
)/magic.c
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
61 ifeq ($(strip $(MOUSEKEY_ENABLE
)), yes
)
62 TMK_COMMON_SRC
+= $(COMMON_DIR
)/mousekey.c
63 TMK_COMMON_DEFS
+= -DMOUSEKEY_ENABLE
64 TMK_COMMON_DEFS
+= -DMOUSE_ENABLE
66 ifeq ($(strip $(MOUSE_SHARED_EP
)), yes
)
67 TMK_COMMON_DEFS
+= -DMOUSE_SHARED_EP
68 SHARED_EP_ENABLE
= yes
72 ifeq ($(strip $(EXTRAKEY_ENABLE
)), yes
)
73 TMK_COMMON_DEFS
+= -DEXTRAKEY_ENABLE
74 SHARED_EP_ENABLE
= yes
77 ifeq ($(strip $(RAW_ENABLE
)), yes
)
78 TMK_COMMON_DEFS
+= -DRAW_ENABLE
81 ifeq ($(strip $(CONSOLE_ENABLE
)), yes
)
82 TMK_COMMON_DEFS
+= -DCONSOLE_ENABLE
84 TMK_COMMON_DEFS
+= -DNO_PRINT
85 TMK_COMMON_DEFS
+= -DNO_DEBUG
88 ifeq ($(strip $(COMMAND_ENABLE
)), yes
)
89 TMK_COMMON_SRC
+= $(COMMON_DIR
)/command.c
90 TMK_COMMON_DEFS
+= -DCOMMAND_ENABLE
93 ifeq ($(strip $(NKRO_ENABLE
)), yes
)
94 TMK_COMMON_DEFS
+= -DNKRO_ENABLE
95 SHARED_EP_ENABLE
= yes
98 ifeq ($(strip $(USB_6KRO_ENABLE
)), yes
)
99 TMK_COMMON_DEFS
+= -DUSB_6KRO_ENABLE
102 ifeq ($(strip $(SLEEP_LED_ENABLE
)), yes
)
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
108 ifeq ($(strip $(NO_UART
)), yes
)
109 TMK_COMMON_DEFS
+= -DNO_UART
112 ifeq ($(strip $(NO_SUSPEND_POWER_DOWN
)), yes
)
113 TMK_COMMON_DEFS
+= -DNO_SUSPEND_POWER_DOWN
116 ifeq ($(strip $(BLUETOOTH_ENABLE
)), yes
)
117 TMK_COMMON_DEFS
+= -DBLUETOOTH_ENABLE
118 TMK_COMMON_DEFS
+= -DNO_USB_STARTUP_CHECK
121 ifeq ($(strip $(BLUETOOTH
)), AdafruitBLE
)
122 TMK_COMMON_DEFS
+= -DBLUETOOTH_ENABLE
123 TMK_COMMON_DEFS
+= -DMODULE_ADAFRUIT_BLE
124 TMK_COMMON_DEFS
+= -DNO_USB_STARTUP_CHECK
127 ifeq ($(strip $(BLUETOOTH
)), AdafruitEZKey
)
128 TMK_COMMON_DEFS
+= -DBLUETOOTH_ENABLE
129 TMK_COMMON_DEFS
+= -DMODULE_ADAFRUIT_EZKEY
130 TMK_COMMON_DEFS
+= -DNO_USB_STARTUP_CHECK
133 ifeq ($(strip $(BLUETOOTH
)), RN42
)
134 TMK_COMMON_DEFS
+= -DBLUETOOTH_ENABLE
135 TMK_COMMON_DEFS
+= -DMODULE_RN42
136 TMK_COMMON_DEFS
+= -DNO_USB_STARTUP_CHECK
139 ifeq ($(strip $(ONEHAND_ENABLE
)), yes
)
140 SWAP_HANDS_ENABLE
= yes
# backwards compatibility
142 ifeq ($(strip $(SWAP_HANDS_ENABLE
)), yes
)
143 TMK_COMMON_DEFS
+= -DSWAP_HANDS_ENABLE
146 ifeq ($(strip $(NO_USB_STARTUP_CHECK
)), yes
)
147 TMK_COMMON_DEFS
+= -DNO_USB_STARTUP_CHECK
150 ifeq ($(strip $(SHARED_EP_ENABLE
)), yes
)
151 TMK_COMMON_DEFS
+= -DSHARED_EP_ENABLE
154 ifeq ($(strip $(LTO_ENABLE
)), yes
)
155 LINK_TIME_OPTIMIZATION_ENABLE
= yes
158 ifeq ($(strip $(LINK_TIME_OPTIMIZATION_ENABLE
)), yes
)
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.
)
164 TMK_COMMON_DEFS
+= -DLINK_TIME_OPTIMIZATION_ENABLE
165 TMK_COMMON_DEFS
+= -DNO_ACTION_MACRO
166 TMK_COMMON_DEFS
+= -DNO_ACTION_FUNCTION
170 VPATH
+= $(TMK_PATH
)/$(COMMON_DIR
)
171 VPATH
+= $(TMK_PATH
)/$(PLATFORM_COMMON_DIR
)