]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - common_features.mk
Stricter, leaner DEBOUNCE_TYPE section in common_features.mk. Cleanup debounce_type.mk
[qmk_firmware.git] / common_features.mk
index 8e2747d5a4e0de09df2547b582b6adf1ef837919..d03dbed09b0cc1f5382f819eee8b7ae0903088a5 100644 (file)
@@ -265,14 +265,15 @@ endif
 
 DEBOUNCE_DIR:= $(QUANTUM_DIR)/debounce
 # Debounce Modules. If implemented in matrix.c, don't use these.
-ifeq ($(strip $(DEBOUNCE_TYPE)), custom)
-    # Do nothing. do your debouncing in matrix.c
-else ifeq ($(strip $(DEBOUNCE_TYPE)), sym_g)
+DEBOUNCE_TYPE?= sym_g
+VALID_DEBOUNCE_TYPES := sym_g eager_pk custom
+ifeq ($(filter $(DEBOUNCE_TYPE),$(VALID_DEBOUNCE_TYPES)),)
+    $(error DEBOUNCE_TYPE="$(DEBOUNCE_TYPE)" is not a valid debounce algorithm)
+endif
+ifeq ($(strip $(DEBOUNCE_TYPE)), sym_g)
     QUANTUM_SRC += $(DEBOUNCE_DIR)/debounce_sym_g.c
 else ifeq ($(strip $(DEBOUNCE_TYPE)), eager_pk)
     QUANTUM_SRC += $(DEBOUNCE_DIR)/debounce_eager_pk.c
-else # default algorithm. Won't be used if we have a custom_matrix that doesn't utilize it
-    QUANTUM_SRC += $(DEBOUNCE_DIR)/debounce_sym_g.c
 endif