BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = no # Mouse keys(+4700)
EXTRAKEY_ENABLE = no # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
+CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
+# CONSOLE_ENABLE and COMMAND_ENABLE
+# yes, no +1500
+# yes, yes +3200
+# no, yes +400
NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
MIDI_ENABLE = no # MIDI controls
$(info - LED_BACK_ENABLE=$(LED_BACK_ENABLE))
$(info - LED_UNDERGLOW_ENABLE=$(LED_UNDERGLOW_ENABLE))
$(info - LED_ANIMATION=$(LED_ANIMATIONS))
+ $(info - IOS_DEVICE_ENABLE=$(IOS_DEVICE_ENABLE))
endef
# Helix keyboard customize
-# you can edit follows 4 Variables
-# jp: 以下の4つの変数を必要に応じて編集します。
+# you can edit follows 7 Variables
+# jp: 以下の7つの変数を必要に応じて編集します。
+HELIX_ROWS = 5 # Helix Rows is 4 or 5
OLED_ENABLE = no # OLED_ENABLE
+LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c"
LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.)
LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.)
LED_ANIMATIONS = yes # LED animations
+IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
+Link_Time_Optimization = no # if firmware size over limit, try this option
#### LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE.
#### Do not enable these with audio at the same time.
+### Helix keyboard 'five_rows' keymap: convenient command line option
+## make HELIX=<options> helix:five_rows
+## option= oled | back | under | na | ios
+## ex.
+## make HELIX=oled helix:five_rows
+## make HELIX=oled,back helix:five_rows
+## make HELIX=oled,under helix:five_rows
+## make HELIX=oled,back,na helix:five_rows
+## make HELIX=oled,back,ios helix:five_rows
+##
+ifneq ($(strip $(HELIX)),)
+ ifeq ($(findstring oled,$(HELIX)), oled)
+ OLED_ENABLE = yes
+ endif
+ ifeq ($(findstring back,$(HELIX)), back)
+ LED_BACK_ENABLE = yes
+ else ifeq ($(findstring under,$(HELIX)), under)
+ LED_UNDERGLOW_ENABLE = yes
+ endif
+ ifeq ($(findstring na,$(HELIX)), na)
+ LED_ANIMATIONS = no
+ endif
+ ifeq ($(findstring ios,$(HELIX)), ios)
+ IOS_DEVICE_ENABLE = yes
+ endif
+ ifeq ($(findstring console,$(HELIX)), console)
+ CONSOLE_ENABLE = yes
+ endif
+ $(eval $(call HELIX_CUSTOMISE_MSG))
+ $(info )
+endif
+
# Uncomment these for checking
# jp: コンパイル時にカスタマイズの状態を表示したい時はコメントをはずします。
# $(eval $(call HELIX_CUSTOMISE_MSG))
# $(info )
+ifneq ($(strip $(HELIX_ROWS)), 4)
+ifneq ($(strip $(HELIX_ROWS)), 5)
+$(error HELIX_ROWS = $(strip $(HELIX_ROWS)) is unexpected value)
+endif
+endif
+OPT_DEFS += -DHELIX_ROWS=$(strip $(HELIX_ROWS))
+
ifeq ($(strip $(LED_BACK_ENABLE)), yes)
RGBLIGHT_ENABLE = yes
OPT_DEFS += -DRGBLED_BACK
RGBLIGHT_ENABLE = no
endif
+ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
+ OPT_DEFS += -DIOS_DEVICE_ENABLE
+endif
+
ifeq ($(strip $(LED_ANIMATIONS)), yes)
- OPT_DEFS += -DRGBLIGHT_ANIMATIONS
+ OPT_DEFS += -DLED_ANIMATIONS
endif
ifeq ($(strip $(OLED_ENABLE)), yes)
OPT_DEFS += -DOLED_ENABLE
endif
+ifeq ($(strip $(LOCAL_GLCDFONT)), yes)
+ OPT_DEFS += -DLOCAL_GLCDFONT
+endif
+
+ifeq ($(strip $(Link_Time_Optimization)),yes)
+ EXTRAFLAGS += -flto -DUSE_Link_Time_Optimization
+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