X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=common_features.mk;h=8c3361732cd018691be945344770977308947396;hb=e2f7c3d5a59933519e8cf7b4d9176587334d7b70;hp=97febe2e77e90a62b9dc07baf55e78db291add71;hpb=155e9310ff685f557287749bef2e02510538a6d9;p=qmk_firmware.git diff --git a/common_features.mk b/common_features.mk index 97febe2e7..8c3361732 100644 --- a/common_features.mk +++ b/common_features.mk @@ -254,6 +254,7 @@ QUANTUM_SRC:= \ $(QUANTUM_DIR)/keymap_common.c \ $(QUANTUM_DIR)/keycode_config.c +# Include the standard or split matrix code if needed ifneq ($(strip $(CUSTOM_MATRIX)), yes) ifeq ($(strip $(SPLIT_KEYBOARD)), yes) QUANTUM_SRC += $(QUANTUM_DIR)/split_common/matrix.c @@ -262,15 +263,25 @@ ifneq ($(strip $(CUSTOM_MATRIX)), yes) endif endif +# Include the standard debounce code if needed +ifneq ($(strip $(CUSTOM_DEBOUNCE)), yes) + QUANTUM_SRC += $(QUANTUM_DIR)/debounce.c +endif + ifeq ($(strip $(SPLIT_KEYBOARD)), yes) - SERIAL_BACKWARD_COMPAT := $(wildcard $(QUANTUM_DIR)/split_common/serial_backward_compatibility.h) - ifneq ($(SERIAL_BACKWARD_COMPAT),) - CONFIG_H += $(SERIAL_BACKWARD_COMPAT) - # $(info CONFIG_H=$(CONFIG_H)) - endif OPT_DEFS += -DSPLIT_KEYBOARD + + # Include files used by all split keyboards QUANTUM_SRC += $(QUANTUM_DIR)/split_common/split_flags.c \ - $(QUANTUM_DIR)/split_common/split_util.c \ - $(QUANTUM_DIR)/split_common/i2c.c \ - $(QUANTUM_DIR)/split_common/serial.c + $(QUANTUM_DIR)/split_common/split_util.c + + # Determine which (if any) transport files are required + ifneq ($(strip $(SPLIT_TRANSPORT)), custom) + QUANTUM_SRC += $(QUANTUM_DIR)/split_common/transport.c + # Functions added via QUANTUM_LIB_SRC are only included in the final binary if they're called. + # Unused functions are pruned away, which is why we can add both drivers here without bloat. + QUANTUM_LIB_SRC += $(QUANTUM_DIR)/split_common/i2c.c \ + $(QUANTUM_DIR)/split_common/serial.c + endif + COMMON_VPATH += $(QUANTUM_PATH)/split_common endif