diff options
Diffstat (limited to 'keyboards/helix/rev2/keymaps/five_rows/rules.mk')
-rw-r--r-- | keyboards/helix/rev2/keymaps/five_rows/rules.mk | 48 |
1 files changed, 45 insertions, 3 deletions
diff --git a/keyboards/helix/rev2/keymaps/five_rows/rules.mk b/keyboards/helix/rev2/keymaps/five_rows/rules.mk index 8c4239deb9..83cdb30d0c 100644 --- a/keyboards/helix/rev2/keymaps/five_rows/rules.mk +++ b/keyboards/helix/rev2/keymaps/five_rows/rules.mk @@ -25,9 +25,51 @@ HELIX_ROWS = 5 # Helix Rows is 4 or 5 # IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) ifneq ($(strip $(HELIX)),) - ifeq ($(findstring console,$(HELIX)), console) - CONSOLE_ENABLE = yes - endif + define KEYMAP_OPTION_PARSE + # $xinfo .$1.x #debug + # parse 'dispoff', 'consle', 'stdole', 'oled', 'sc' + ifeq ($(strip $1),dispoff) + OLED_ENABLE = no + OLED_DRIVER_ENABLE = no + LED_BACK_ENABLE = no + LED_UNDERGLOW_ENABLE = no + endif + ifeq ($(strip $1),console) + CONSOLE_ENABLE = yes + endif + ifeq ($(strip $1),stdole) + ## make HELIX=stdole helix:five_rows -- use TOP/drivers/oled/oled_driver.c + OLED_ENABLE = new + endif + ifeq ($(strip $1),oled) + ## make HELIX=oled helix:five_rows -- use helix/local_drivers/ssd1306.c + OLED_ENABLE = yes + endif + ifeq ($(strip $1),back) + LED_BACK_ENABLE = yes + endif + ifeq ($(strip $1),sc) + SPLIT_KEYBOARD = yes + endif + endef # end of KEYMAP_OPTION_PARSE + + COMMA=, + $(eval $(foreach A_OPTION_NAME,$(subst $(COMMA), ,$(HELIX)), \ + $(call KEYMAP_OPTION_PARSE,$(A_OPTION_NAME)))) +endif + +ifeq ($(strip $(OLED_ENABLE)), new) + OLED_DRIVER_ENABLE = yes + OLED_ENABLE = no + SRC += oled_display.c + ifeq ($(strip $(LOCAL_GLCDFONT)), yes) + OPT_DEFS += -DOLED_FONT_H=\<helixfont.h\> + else + OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\" + endif +endif +ifeq ($(strip $(OLED_ENABLE)), yes) + SRC += oled_display.c endif # convert Helix-specific options (that represent combinations of standard options) |