From c94cc1effaf0a71f62f5498b3437f22c96f18f74 Mon Sep 17 00:00:00 2001
From: Zach White <skullydazed@gmail.com>
Date: Thu, 9 Sep 2021 21:37:31 -0700
Subject: [PATCH] Move non-assignment code to post_rules.mk (#14207)

* 40percentclub/ut47: move non-assignment code to post_rules.mk

* converter/palm_usb: move non-assignment code to post_rules.mk

* converter/sun_usb: move non-assignment code to post_rules.mk

* dm9records/ergoinu: move non-assignment code to post_rules.mk

* ergotaco: move non-assignment code to post_rules.mk

* handwired/symmetric70_proto: move non-assignment code to post_rules.mk

* hhkb/ansi: move non-assignment code to post_rules.mk

* hhkb/jp: move non-assignment code to post_rules.mk

* lfkeyboards/lfk78: move non-assignment code to post_rules.mk

* lfkeyboards/lfk87: move non-assignment code to post_rules.mk

* lfkeyboards/lfkpad: move non-assignment code to post_rules.mk

* lfkeyboards/mini1800: move non-assignment code to post_rules.mk

* manta60: move non-assignment code to post_rules.mk

* mschwingen/modelm: move non-assignment code to post_rules.mk

* newgame40: move non-assignment code to post_rules.mk

* numatreus: move non-assignment code to post_rules.mk

* rgbkb/zen: move non-assignment code to post_rules.mk

* rgbkb/zen/rev2: move non-assignment code to post_rules.mk

* Revert "handwired/symmetric70_proto: move non-assignment code to post_rules.mk"

This reverts commit cffaf0075c3c9b2473a660ba4af8835a9162311b.
---
 keyboards/40percentclub/ut47/post_rules.mk   |  4 ++++
 keyboards/40percentclub/ut47/rules.mk        |  5 -----
 keyboards/converter/palm_usb/post_rules.mk   |  7 +++++++
 keyboards/converter/palm_usb/rules.mk        |  7 -------
 keyboards/converter/sun_usb/post_rules.mk    |  6 ++++++
 keyboards/converter/sun_usb/rules.mk         |  6 ------
 keyboards/dm9records/ergoinu/post_rules.mk   |  9 +++++++++
 keyboards/dm9records/ergoinu/rules.mk        | 10 ----------
 keyboards/ergotaco/post_rules.mk             |  8 ++++++++
 keyboards/ergotaco/rules.mk                  |  3 ---
 keyboards/hhkb/ansi/post_rules.mk            | 18 ++++++++++++++++++
 keyboards/hhkb/ansi/rules.mk                 | 20 --------------------
 keyboards/hhkb/jp/post_rules.mk              | 18 ++++++++++++++++++
 keyboards/hhkb/jp/rules.mk                   | 20 --------------------
 keyboards/lfkeyboards/lfk78/post_rules.mk    | 14 ++++++++++++++
 keyboards/lfkeyboards/lfk78/rules.mk         | 15 ---------------
 keyboards/lfkeyboards/lfk87/post_rules.mk    | 13 +++++++++++++
 keyboards/lfkeyboards/lfk87/rules.mk         | 15 ---------------
 keyboards/lfkeyboards/lfkpad/post_rules.mk   |  7 +++++++
 keyboards/lfkeyboards/lfkpad/rules.mk        |  8 --------
 keyboards/lfkeyboards/mini1800/post_rules.mk |  9 +++++++++
 keyboards/lfkeyboards/mini1800/rules.mk      |  9 ---------
 keyboards/manta60/post_rules.mk              |  3 +++
 keyboards/manta60/rules.mk                   |  4 ----
 keyboards/mschwingen/modelm/post_rules.mk    |  3 +++
 keyboards/mschwingen/modelm/rules.mk         |  4 ----
 keyboards/newgame40/post_rules.mk            |  3 +++
 keyboards/newgame40/rules.mk                 |  4 ----
 keyboards/numatreus/post_rules.mk            |  3 +++
 keyboards/numatreus/rules.mk                 |  4 ----
 keyboards/rgbkb/zen/post_rules.mk            | 14 ++++++++++++++
 keyboards/rgbkb/zen/rev2/post_rules.mk       |  5 +++++
 keyboards/rgbkb/zen/rev2/rules.mk            |  6 ------
 keyboards/rgbkb/zen/rules.mk                 | 15 ---------------
 34 files changed, 144 insertions(+), 155 deletions(-)
 create mode 100644 keyboards/40percentclub/ut47/post_rules.mk
 create mode 100644 keyboards/converter/palm_usb/post_rules.mk
 create mode 100644 keyboards/converter/sun_usb/post_rules.mk
 create mode 100644 keyboards/dm9records/ergoinu/post_rules.mk
 create mode 100644 keyboards/ergotaco/post_rules.mk
 create mode 100644 keyboards/hhkb/ansi/post_rules.mk
 create mode 100644 keyboards/hhkb/jp/post_rules.mk
 create mode 100644 keyboards/lfkeyboards/lfk78/post_rules.mk
 create mode 100644 keyboards/lfkeyboards/lfk87/post_rules.mk
 create mode 100644 keyboards/lfkeyboards/lfkpad/post_rules.mk
 create mode 100644 keyboards/lfkeyboards/mini1800/post_rules.mk
 create mode 100644 keyboards/manta60/post_rules.mk
 create mode 100644 keyboards/mschwingen/modelm/post_rules.mk
 create mode 100644 keyboards/newgame40/post_rules.mk
 create mode 100644 keyboards/numatreus/post_rules.mk
 create mode 100644 keyboards/rgbkb/zen/post_rules.mk
 create mode 100644 keyboards/rgbkb/zen/rev2/post_rules.mk

diff --git a/keyboards/40percentclub/ut47/post_rules.mk b/keyboards/40percentclub/ut47/post_rules.mk
new file mode 100644
index 0000000000..7051ee413d
--- /dev/null
+++ b/keyboards/40percentclub/ut47/post_rules.mk
@@ -0,0 +1,4 @@
+ifeq ($(strip $(LED_ENABLE)), yes)
+  OPT_DEFS += -DLED_ENABLE
+  SRC += led.c
+endif
diff --git a/keyboards/40percentclub/ut47/rules.mk b/keyboards/40percentclub/ut47/rules.mk
index 4f0d0bdb2f..9c0e3a206c 100644
--- a/keyboards/40percentclub/ut47/rules.mk
+++ b/keyboards/40percentclub/ut47/rules.mk
@@ -24,8 +24,3 @@ AUDIO_ENABLE = no           # Audio output on port C6
 # custom matrix setup
 CUSTOM_MATRIX = yes
 SRC += matrix.c protocol/serial_uart.c
-
-ifeq ($(strip $(LED_ENABLE)), yes)
-  OPT_DEFS += -DLED_ENABLE
-  SRC += led.c
-endif
diff --git a/keyboards/converter/palm_usb/post_rules.mk b/keyboards/converter/palm_usb/post_rules.mk
new file mode 100644
index 0000000000..9c11076701
--- /dev/null
+++ b/keyboards/converter/palm_usb/post_rules.mk
@@ -0,0 +1,7 @@
+ifdef HARDWARE_SERIAL
+  # Untested with palm_usb
+  SRC += protocol/serial_uart.c
+  OPT_DEFS += -DHARDWARE_SERIAL
+else
+  SRC += protocol/serial_soft.c
+endif
diff --git a/keyboards/converter/palm_usb/rules.mk b/keyboards/converter/palm_usb/rules.mk
index ff1ddc8f49..dc8cf17400 100644
--- a/keyboards/converter/palm_usb/rules.mk
+++ b/keyboards/converter/palm_usb/rules.mk
@@ -25,12 +25,5 @@ SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend
 CUSTOM_MATRIX = yes
 
 SRC += matrix.c
-ifdef HARDWARE_SERIAL
-  # Untested with palm_usb
-  SRC += protocol/serial_uart.c
-  OPT_DEFS += -DHARDWARE_SERIAL
-else
-  SRC += protocol/serial_soft.c
-endif
 
 DEFAULT_FOLDER = converter/palm_usb/stowaway
diff --git a/keyboards/converter/sun_usb/post_rules.mk b/keyboards/converter/sun_usb/post_rules.mk
new file mode 100644
index 0000000000..2ea1f0a5bf
--- /dev/null
+++ b/keyboards/converter/sun_usb/post_rules.mk
@@ -0,0 +1,6 @@
+ifdef HARDWARE_SERIAL
+  SRC += protocol/serial_uart.c
+  OPT_DEFS += -DHARDWARE_SERIAL
+else
+  SRC += protocol/serial_soft.c
+endif
diff --git a/keyboards/converter/sun_usb/rules.mk b/keyboards/converter/sun_usb/rules.mk
index e863d25745..14dd57e1b7 100644
--- a/keyboards/converter/sun_usb/rules.mk
+++ b/keyboards/converter/sun_usb/rules.mk
@@ -25,11 +25,5 @@ SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend
 CUSTOM_MATRIX = yes
 
 SRC += matrix.c led.c
-ifdef HARDWARE_SERIAL
-  SRC += protocol/serial_uart.c
-  OPT_DEFS += -DHARDWARE_SERIAL
-else
-  SRC += protocol/serial_soft.c
-endif
 
 DEFAULT_FOLDER = converter/sun_usb/type5
diff --git a/keyboards/dm9records/ergoinu/post_rules.mk b/keyboards/dm9records/ergoinu/post_rules.mk
new file mode 100644
index 0000000000..02aa48104c
--- /dev/null
+++ b/keyboards/dm9records/ergoinu/post_rules.mk
@@ -0,0 +1,9 @@
+ifneq ($(strip $(ERGOINU)),)
+  ifeq ($(findstring promicroled, $(ERGOINU)), promicroled)
+    DISABLE_PROMICRO_LEDs = no
+  endif
+endif
+
+ifeq ($(strip $(DISABLE_PROMICRO_LEDs)), yes)
+  OPT_DEFS += -DDISABLE_PROMICRO_LEDs
+endif
diff --git a/keyboards/dm9records/ergoinu/rules.mk b/keyboards/dm9records/ergoinu/rules.mk
index e3362ea313..4d98df442b 100644
--- a/keyboards/dm9records/ergoinu/rules.mk
+++ b/keyboards/dm9records/ergoinu/rules.mk
@@ -29,13 +29,3 @@ SRC += matrix.c serial.c split_util.c
 
 # ergoinu configs
 DISABLE_PROMICRO_LEDs = yes
-
-ifneq ($(strip $(ERGOINU)),)
-  ifeq ($(findstring promicroled, $(ERGOINU)), promicroled)
-    DISABLE_PROMICRO_LEDs = no
-  endif
-endif
-
-ifeq ($(strip $(DISABLE_PROMICRO_LEDs)), yes)
-  OPT_DEFS += -DDISABLE_PROMICRO_LEDs
-endif
diff --git a/keyboards/ergotaco/post_rules.mk b/keyboards/ergotaco/post_rules.mk
new file mode 100644
index 0000000000..0db3171b33
--- /dev/null
+++ b/keyboards/ergotaco/post_rules.mk
@@ -0,0 +1,8 @@
+
+# A bunch of stuff that you shouldn't touch unless you
+# know what you're doing.
+#
+# No touchy, capiche?
+ifeq ($(strip $(DEBUG_MATRIX)), yes)
+    OPT_DEFS += -DDEBUG_MATRIX
+endif
diff --git a/keyboards/ergotaco/rules.mk b/keyboards/ergotaco/rules.mk
index 9fe0992ffd..db236477b0 100644
--- a/keyboards/ergotaco/rules.mk
+++ b/keyboards/ergotaco/rules.mk
@@ -14,6 +14,3 @@ COMMAND_ENABLE		= yes
 #
 # No touchy, capiche?
 SRC += matrix.c i2c_master.c
-ifeq ($(strip $(DEBUG_MATRIX)), yes)
-    OPT_DEFS += -DDEBUG_MATRIX
-endif
diff --git a/keyboards/hhkb/ansi/post_rules.mk b/keyboards/hhkb/ansi/post_rules.mk
new file mode 100644
index 0000000000..bc6ad5cd4c
--- /dev/null
+++ b/keyboards/hhkb/ansi/post_rules.mk
@@ -0,0 +1,18 @@
+ifeq ($(strip $(HHKB_RN42_ENABLE)), yes)
+
+OPT_DEFS += -DHHKB_RN42_ENABLE
+
+# Support for the RN42 Bluetooth module. This is the BT module in Hasu's BT
+# HHKB Alt controller.
+RN42_DIR = ../rn42
+
+SRC +=  serial_uart.c \
+	../rn42/suart.S \
+	../rn42/rn42.c \
+	../rn42/rn42_task.c \
+	../rn42/battery.c \
+	../rn42/main.c
+
+VPATH += $(RN42_DIR)
+
+endif
diff --git a/keyboards/hhkb/ansi/rules.mk b/keyboards/hhkb/ansi/rules.mk
index b0f17c93a0..56898e2602 100644
--- a/keyboards/hhkb/ansi/rules.mk
+++ b/keyboards/hhkb/ansi/rules.mk
@@ -33,26 +33,6 @@ MIDI_ENABLE = no              # MIDI support
 # project specific files
 SRC = matrix.c
 
-ifeq ($(strip $(HHKB_RN42_ENABLE)), yes)
-
-OPT_DEFS += -DHHKB_RN42_ENABLE
-
-# Support for the RN42 Bluetooth module. This is the BT module in Hasu's BT
-# HHKB Alt controller.
-RN42_DIR = ../rn42
-
-SRC +=  serial_uart.c \
-	../rn42/suart.S \
-	../rn42/rn42.c \
-	../rn42/rn42_task.c \
-	../rn42/battery.c \
-	../rn42/main.c
-
-VPATH += $(RN42_DIR)
-
-endif
-
-
 # debug-on: EXTRAFLAGS += -DDEBUG -DDEBUG_ACTION
 # debug-on: all
 
diff --git a/keyboards/hhkb/jp/post_rules.mk b/keyboards/hhkb/jp/post_rules.mk
new file mode 100644
index 0000000000..bc6ad5cd4c
--- /dev/null
+++ b/keyboards/hhkb/jp/post_rules.mk
@@ -0,0 +1,18 @@
+ifeq ($(strip $(HHKB_RN42_ENABLE)), yes)
+
+OPT_DEFS += -DHHKB_RN42_ENABLE
+
+# Support for the RN42 Bluetooth module. This is the BT module in Hasu's BT
+# HHKB Alt controller.
+RN42_DIR = ../rn42
+
+SRC +=  serial_uart.c \
+	../rn42/suart.S \
+	../rn42/rn42.c \
+	../rn42/rn42_task.c \
+	../rn42/battery.c \
+	../rn42/main.c
+
+VPATH += $(RN42_DIR)
+
+endif
diff --git a/keyboards/hhkb/jp/rules.mk b/keyboards/hhkb/jp/rules.mk
index 50e2c2c412..9b5b0b48b0 100644
--- a/keyboards/hhkb/jp/rules.mk
+++ b/keyboards/hhkb/jp/rules.mk
@@ -33,26 +33,6 @@ MIDI_ENABLE = no              # MIDI support
 # project specific files
 SRC = matrix.c
 
-ifeq ($(strip $(HHKB_RN42_ENABLE)), yes)
-
-OPT_DEFS += -DHHKB_RN42_ENABLE
-
-# Support for the RN42 Bluetooth module. This is the BT module in Hasu's BT
-# HHKB Alt controller.
-RN42_DIR = ../rn42
-
-SRC +=  serial_uart.c \
-	../rn42/suart.S \
-	../rn42/rn42.c \
-	../rn42/rn42_task.c \
-	../rn42/battery.c \
-	../rn42/main.c
-
-VPATH += $(RN42_DIR)
-
-endif
-
-
 # debug-on: EXTRAFLAGS += -DDEBUG -DDEBUG_ACTION
 # debug-on: all
 
diff --git a/keyboards/lfkeyboards/lfk78/post_rules.mk b/keyboards/lfkeyboards/lfk78/post_rules.mk
new file mode 100644
index 0000000000..03f975b9df
--- /dev/null
+++ b/keyboards/lfkeyboards/lfk78/post_rules.mk
@@ -0,0 +1,14 @@
+# Extra source files for IS3731 lighting
+SRC += TWIlib.c issi.c lighting.c
+
+ifeq ($(strip $(ISSI_ENABLE)), yes)
+    TMK_COMMON_DEFS += -DISSI_ENABLE
+endif
+
+ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
+    TMK_COMMON_DEFS += -DWATCHDOG_ENABLE
+endif
+
+ifeq ($(strip $(CAPSLOCK_LED)), yes)
+    TMK_COMMON_DEFS += -DCAPSLOCK_LED
+endif
diff --git a/keyboards/lfkeyboards/lfk78/rules.mk b/keyboards/lfkeyboards/lfk78/rules.mk
index 81f532615f..972e09af52 100644
--- a/keyboards/lfkeyboards/lfk78/rules.mk
+++ b/keyboards/lfkeyboards/lfk78/rules.mk
@@ -24,19 +24,4 @@ ISSI_ENABLE = yes               # If the I2C pullup resistors aren't install thi
 WATCHDOG_ENABLE = no            # Resets keyboard if matrix_scan isn't run every 250ms
 CAPSLOCK_LED = no              # Toggle back light LED of Caps Lock
 
-# Extra source files for IS3731 lighting
-SRC = TWIlib.c issi.c lighting.c
-
-ifeq ($(strip $(ISSI_ENABLE)), yes)
-    TMK_COMMON_DEFS += -DISSI_ENABLE
-endif
-
-ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
-    TMK_COMMON_DEFS += -DWATCHDOG_ENABLE
-endif
-
-ifeq ($(strip $(CAPSLOCK_LED)), yes)
-    TMK_COMMON_DEFS += -DCAPSLOCK_LED
-endif
-
 DEFAULT_FOLDER = lfkeyboards/lfk78/revj
diff --git a/keyboards/lfkeyboards/lfk87/post_rules.mk b/keyboards/lfkeyboards/lfk87/post_rules.mk
new file mode 100644
index 0000000000..563462dd99
--- /dev/null
+++ b/keyboards/lfkeyboards/lfk87/post_rules.mk
@@ -0,0 +1,13 @@
+ifeq ($(LFK_REV), A)
+    MCU = at90usb1286
+else
+    MCU = at90usb646
+endif
+
+ifeq ($(strip $(ISSI_ENABLE)), yes)
+    OPT_DEFS += -DISSI_ENABLE
+endif
+
+ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
+    OPT_DEFS += -DWATCHDOG_ENABLE
+endif
diff --git a/keyboards/lfkeyboards/lfk87/rules.mk b/keyboards/lfkeyboards/lfk87/rules.mk
index 7f5621b030..bc988f15aa 100644
--- a/keyboards/lfkeyboards/lfk87/rules.mk
+++ b/keyboards/lfkeyboards/lfk87/rules.mk
@@ -6,11 +6,6 @@
 #
 LFK_REV = C
 
-ifeq ($(LFK_REV), A)
-    MCU = at90usb1286
-else
-    MCU = at90usb646
-endif
 BOOTLOADER = atmel-dfu
 OPT_DEFS += -DLFK_TKL_REV_$(LFK_REV)
 
@@ -42,13 +37,3 @@ TAP_DANCE_ENABLE = no
 
 ISSI_ENABLE = yes			# If the I2C pullup resistors aren't install this must be disabled
 WATCHDOG_ENABLE = no		# Resets keyboard if matrix_scan isn't run every 250ms
-
-
-
-ifeq ($(strip $(ISSI_ENABLE)), yes)
-    OPT_DEFS += -DISSI_ENABLE
-endif
-
-ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
-    OPT_DEFS += -DWATCHDOG_ENABLE
-endif
diff --git a/keyboards/lfkeyboards/lfkpad/post_rules.mk b/keyboards/lfkeyboards/lfkpad/post_rules.mk
new file mode 100644
index 0000000000..ad997587b2
--- /dev/null
+++ b/keyboards/lfkeyboards/lfkpad/post_rules.mk
@@ -0,0 +1,7 @@
+ifeq ($(strip $(ISSI_ENABLE)), yes)
+    TMK_COMMON_DEFS += -DISSI_ENABLE
+endif
+
+ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
+    TMK_COMMON_DEFS += -DWATCHDOG_ENABLE
+endif
diff --git a/keyboards/lfkeyboards/lfkpad/rules.mk b/keyboards/lfkeyboards/lfkpad/rules.mk
index 942f11368a..392a0bdb9e 100644
--- a/keyboards/lfkeyboards/lfkpad/rules.mk
+++ b/keyboards/lfkeyboards/lfkpad/rules.mk
@@ -29,12 +29,4 @@ WATCHDOG_ENABLE = no         # Resets keyboard if matrix_scan() isn't run every
 
 SRC = TWIlib.c issi.c lighting.c
 
-ifeq ($(strip $(ISSI_ENABLE)), yes)
-    TMK_COMMON_DEFS += -DISSI_ENABLE
-endif
-
-ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
-    TMK_COMMON_DEFS += -DWATCHDOG_ENABLE
-endif
-
 LAYOUTS = numpad_6x4
diff --git a/keyboards/lfkeyboards/mini1800/post_rules.mk b/keyboards/lfkeyboards/mini1800/post_rules.mk
new file mode 100644
index 0000000000..f04e10e4a3
--- /dev/null
+++ b/keyboards/lfkeyboards/mini1800/post_rules.mk
@@ -0,0 +1,9 @@
+ifeq ($(LFK_REV), A)
+    MCU = at90usb1286
+else
+    MCU = at90usb646
+endif
+
+ifeq ($(strip $(ISSI_ENABLE)), yes)
+    # TMK_COMMON_DEFS += -DISSI_ENABLE
+endif
diff --git a/keyboards/lfkeyboards/mini1800/rules.mk b/keyboards/lfkeyboards/mini1800/rules.mk
index a9c29c4b91..c9a9b01054 100644
--- a/keyboards/lfkeyboards/mini1800/rules.mk
+++ b/keyboards/lfkeyboards/mini1800/rules.mk
@@ -7,21 +7,12 @@
 # Set to A or C
 LFK_REV = C
 
-ifeq ($(LFK_REV), A)
-    MCU = at90usb1286
-else
-    MCU = at90usb646
-endif
 BOOTLOADER = atmel-dfu
 OPT_DEFS += -DLFK_TKL_REV_$(LFK_REV)
 
 # Extra source files for IS3731 lighting
 SRC = TWIlib.c issi.c lighting.c
 
-ifeq ($(strip $(ISSI_ENABLE)), yes)
-    # TMK_COMMON_DEFS += -DISSI_ENABLE
-endif
-
 # Build Options
 #   change yes to no to disable
 #
diff --git a/keyboards/manta60/post_rules.mk b/keyboards/manta60/post_rules.mk
new file mode 100644
index 0000000000..e26b52df30
--- /dev/null
+++ b/keyboards/manta60/post_rules.mk
@@ -0,0 +1,3 @@
+ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
+    OPT_DEFS += -DIOS_DEVICE_ENABLE
+endif
diff --git a/keyboards/manta60/rules.mk b/keyboards/manta60/rules.mk
index db012a1551..dbd3ce3093 100644
--- a/keyboards/manta60/rules.mk
+++ b/keyboards/manta60/rules.mk
@@ -23,7 +23,3 @@ AUDIO_ENABLE = no           # Audio output
 SPLIT_KEYBOARD = yes
 
 IOS_DEVICE_ENABLE = no      # connect to IOS device (iPad, iPhone)
-
-ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
-    OPT_DEFS += -DIOS_DEVICE_ENABLE
-endif
diff --git a/keyboards/mschwingen/modelm/post_rules.mk b/keyboards/mschwingen/modelm/post_rules.mk
new file mode 100644
index 0000000000..a1c2040f4c
--- /dev/null
+++ b/keyboards/mschwingen/modelm/post_rules.mk
@@ -0,0 +1,3 @@
+ifeq ($(strip $(UART_DEBUG)), yes)
+    OPT_DEFS += -DUART_DEBUG
+endif
diff --git a/keyboards/mschwingen/modelm/rules.mk b/keyboards/mschwingen/modelm/rules.mk
index ef70f5449c..d8bcf9b4ad 100644
--- a/keyboards/mschwingen/modelm/rules.mk
+++ b/keyboards/mschwingen/modelm/rules.mk
@@ -36,8 +36,4 @@ OPT_DEFS += -DSLEEP_LED_ENABLE # we need our own sleep callbacks to turn of WS28
 
 LTO_ENABLE = yes
 
-ifeq ($(strip $(UART_DEBUG)), yes)
-    OPT_DEFS += -DUART_DEBUG
-endif
-
 DEFAULT_FOLDER = mschwingen/modelm/led_wired
diff --git a/keyboards/newgame40/post_rules.mk b/keyboards/newgame40/post_rules.mk
new file mode 100644
index 0000000000..68229fe12b
--- /dev/null
+++ b/keyboards/newgame40/post_rules.mk
@@ -0,0 +1,3 @@
+ifeq ($(strip $(IOS_DEVICE_ENABLE )), yes)
+    OPT_DEFS += -DIOS_DEVICE_ENABLE 
+endif
diff --git a/keyboards/newgame40/rules.mk b/keyboards/newgame40/rules.mk
index 87d565cff4..4b580c7d2d 100644
--- a/keyboards/newgame40/rules.mk
+++ b/keyboards/newgame40/rules.mk
@@ -21,10 +21,6 @@ BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
 RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
 IOS_DEVICE_ENABLE = no     # connect to IOS Device
 
-  ifeq ($(strip $(IOS_DEVICE_ENABLE )), yes)
-    OPT_DEFS += -DIOS_DEVICE_ENABLE 
-  endif
-
 # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
 SLEEP_LED_ENABLE = no    # Breathing sleep LED during USB suspend
 
diff --git a/keyboards/numatreus/post_rules.mk b/keyboards/numatreus/post_rules.mk
new file mode 100644
index 0000000000..1f49875d0f
--- /dev/null
+++ b/keyboards/numatreus/post_rules.mk
@@ -0,0 +1,3 @@
+ifeq ($(strip $(LED_ANIMATIONS)), yes)
+    OPT_DEFS += -DLED_ANIMATIONS
+endif
diff --git a/keyboards/numatreus/rules.mk b/keyboards/numatreus/rules.mk
index 1dd016ab0d..f9d5498961 100644
--- a/keyboards/numatreus/rules.mk
+++ b/keyboards/numatreus/rules.mk
@@ -19,9 +19,5 @@ UNICODE_ENABLE = yes         # Unicode
 RGBLIGHT_ENABLE = no
 LED_ANIMATIONS = no
 
-ifeq ($(strip $(LED_ANIMATIONS)), yes)
-    OPT_DEFS += -DLED_ANIMATIONS
-endif
-
 # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
 SLEEP_LED_ENABLE = no    # Breathing sleep LED during USB suspend
diff --git a/keyboards/rgbkb/zen/post_rules.mk b/keyboards/rgbkb/zen/post_rules.mk
new file mode 100644
index 0000000000..3ddb449efa
--- /dev/null
+++ b/keyboards/rgbkb/zen/post_rules.mk
@@ -0,0 +1,14 @@
+ifeq ($(strip $(CTPC)), yes)
+  CONVERT_TO_PROTON_C=yes
+endif
+
+ifeq ($(strip $(CONVERT_TO_PROTON_C)), yes)
+  SPLIT_KEYBOARD = no       # currently unsupported on ARM
+  RGBLIGHT_ENABLE = no      # currently unsupported on ARM
+
+  EXTRAFLAGS += -DUSE_PROTON_C
+else
+  # Currently moved to Pro Micro only section because of lack of Proton-C support
+  SPLIT_KEYBOARD = yes
+  RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
+endif
diff --git a/keyboards/rgbkb/zen/rev2/post_rules.mk b/keyboards/rgbkb/zen/rev2/post_rules.mk
new file mode 100644
index 0000000000..2a4397e980
--- /dev/null
+++ b/keyboards/rgbkb/zen/rev2/post_rules.mk
@@ -0,0 +1,5 @@
+# Setup so that OLED can be turned on/off easily
+ifeq ($(strip $(OLED_ENABLE)), yes)
+  # Custom local font file
+  OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\"
+endif
diff --git a/keyboards/rgbkb/zen/rev2/rules.mk b/keyboards/rgbkb/zen/rev2/rules.mk
index 9bb8b8cd0d..6dd9d2e270 100644
--- a/keyboards/rgbkb/zen/rev2/rules.mk
+++ b/keyboards/rgbkb/zen/rev2/rules.mk
@@ -1,9 +1,3 @@
 ENCODER_ENABLE = yes
 
 OLED_ENABLE = no
-
-# Setup so that OLED can be turned on/off easily
-ifeq ($(strip $(OLED_ENABLE)), yes)
-  # Custom local font file
-  OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\"
-endif
diff --git a/keyboards/rgbkb/zen/rules.mk b/keyboards/rgbkb/zen/rules.mk
index c18c84be54..0bf7eae653 100644
--- a/keyboards/rgbkb/zen/rules.mk
+++ b/keyboards/rgbkb/zen/rules.mk
@@ -4,21 +4,6 @@ MCU = atmega32u4
 # Bootloader selection
 BOOTLOADER = caterina
 
-ifeq ($(strip $(CTPC)), yes)
-  CONVERT_TO_PROTON_C=yes
-endif
-
-ifeq ($(strip $(CONVERT_TO_PROTON_C)), yes)
-  SPLIT_KEYBOARD = no       # currently unsupported on ARM
-  RGBLIGHT_ENABLE = no      # currently unsupported on ARM
-
-  EXTRAFLAGS += -DUSE_PROTON_C
-else
-  # Currently moved to Pro Micro only section because of lack of Proton-C support
-  SPLIT_KEYBOARD = yes
-  RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
-endif
-
 # Build Options
 #   change to "no" to disable the options, or define them in the Makefile in
 #   the appropriate keymap folder that will get included automatically