From 7f5fc458c1446a0a179981ee5383a12736d99d38 Mon Sep 17 00:00:00 2001 From: mtei <2170248+mtei@users.noreply.github.com> Date: Thu, 26 Sep 2019 19:31:26 +0900 Subject: [PATCH] Simplified 'helix/rev2/keymap/*/rules.mk' using KEYBOARD_LOCAL_FEATURES_MK. No change in build result. * add keyboards/helix/rev2/local_features.mk * add 'KEYBOARD_LOCAL_FEATURES_MK := $(dir $(lastword $(MAKEFILE_LIST)))local_features.mk' into keyboards/helix/rev2/rules.mk * remove HELIX_CUSTOMISE_MSG from keyboards/helix/rev2/keymaps/*/rules.mk * remove HELIX= process from keyboards/helix/rev2/keymaps/*/rules.mk * remove convert code(helix to standaerd) from keyboards/helix/rev2/keymaps/*/rules.mk * add 'include $(strip $(KEYBOARD_LOCAL_FEATURES_MK))' into keyboards/helix/rev2/keymaps/*/rules.mk --- keyboards/helix/rev2/keymaps/default/rules.mk | 131 +++-------------- .../helix/rev2/keymaps/edvorakjp/rules.mk | 124 +++------------- .../helix/rev2/keymaps/five_rows/rules.mk | 138 +++--------------- .../helix/rev2/keymaps/five_rows_jis/rules.mk | 131 +++-------------- keyboards/helix/rev2/keymaps/froggy/rules.mk | 131 +++-------------- .../helix/rev2/keymaps/led_test/rules.mk | 131 +++-------------- keyboards/helix/rev2/keymaps/yshrsmz/rules.mk | 135 +++-------------- keyboards/helix/rev2/local_features.mk | 91 ++++++++++++ keyboards/helix/rev2/rules.mk | 11 ++ keyboards/helix/rules.mk | 4 +- 10 files changed, 234 insertions(+), 793 deletions(-) create mode 100644 keyboards/helix/rev2/local_features.mk diff --git a/keyboards/helix/rev2/keymaps/default/rules.mk b/keyboards/helix/rev2/keymaps/default/rules.mk index 119493ea68f..6a42fcf73fc 100644 --- a/keyboards/helix/rev2/keymaps/default/rules.mk +++ b/keyboards/helix/rev2/keymaps/default/rules.mk @@ -1,120 +1,23 @@ - -# Build Options +# QMK Standard 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 # -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) -COMMAND_ENABLE = no # Commands for debug and configuration -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 -AUDIO_ENABLE = no # Audio output on port C6 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. -SWAP_HANDS_ENABLE = no # Enable one-hand typing - -define HELIX_CUSTOMISE_MSG - $(info Helix customize) - $(info - OLED_ENABLE=$(OLED_ENABLE)) - $(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 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) +# See TOP/keyboards/helix/rules.mk for a list of options that can be set. +# See TOP/docs/config_options.md for more information. +# LINK_TIME_OPTIMIZATION_ENABLE = 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 Spacific Build Options +# you can uncomment and 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) -### Helix keyboard 'default' keymap: convenient command line option -## make HELIX= helix:defualt -## option= oled | back | under | na | ios -## ex. -## make HELIX=oled helix:defualt -## make HELIX=oled,back helix:defualt -## make HELIX=oled,under helix:defualt -## make HELIX=oled,back,na helix:defualt -## make HELIX=oled,back,ios helix:defualt -## -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 - $(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 - ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes') - endif -else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - RGBLIGHT_ENABLE = yes -else - RGBLIGHT_ENABLE = no -endif - -ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes) - OPT_DEFS += -DIOS_DEVICE_ENABLE -endif - -ifeq ($(strip $(LED_ANIMATIONS)), yes) - 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 - -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - -# Uncomment these for debugging -# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE)) -# $(info -- OPT_DEFS=$(OPT_DEFS)) -# $(info ) +# convert Helix-specific options (that represent combinations of standard options) +# into QMK standard options. +include $(strip $(KEYBOARD_LOCAL_FEATURES_MK)) diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk b/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk index 3da9233d4c7..e30690029bb 100644 --- a/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk +++ b/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk @@ -1,124 +1,38 @@ -# Build Options +# QMK Standard 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 # -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) -COMMAND_ENABLE = no # Commands for debug and configuration -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 -AUDIO_ENABLE = no # Audio output on port C6 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. -SWAP_HANDS_ENABLE = no # Enable one-hand typing +# See TOP/keyboards/helix/rules.mk for a list of options that can be set. +# See TOP/docs/config_options.md for more information. +# +LINK_TIME_OPTIMIZATION_ENABLE = no # if firmware size over limit, try this option TAP_DANCE_ENABLE = yes -define HELIX_CUSTOMISE_MSG - $(info Helix customize) - $(info - OLED_ENABLE=$(OLED_ENABLE)) - $(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 Spacific Build Options +# you can uncomment and 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" instead 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) -# Helix keyboard customize -# 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" instead 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_ENABLE = 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 'edvorakjp' keymap: convenient command line option -## make HELIX= helix:edvorakjp -## option= oled | back | under | na | ios -## ex. -## make HELIX=oled helix:edvorakjp -## make HELIX=oled,back helix:edvorakjp -## make HELIX=oled,under helix:edvorakjp -## make HELIX=oled,back,na helix:edvorakjp -## make HELIX=oled,back,ios helix:edvorakjp -## -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 - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(info ) -endif - -# Uncomment these for checking -# jp: コンパイル時にカスタマイズの状態を表示したい時はコメントをはずします。 -# $(eval $(call HELIX_CUSTOMISE_MSG)) -# $(info ) +# convert Helix-specific options (that represent combinations of standard options) +# into QMK standard options. +include $(strip $(KEYBOARD_LOCAL_FEATURES_MK)) ifeq ($(strip $(HELIX_ROWS)), 4) SRC += keymap_4rows.c else ifeq ($(strip $(HELIX_ROWS)), 5) SRC += keymap_5rows.c -else - $(error HELIX_ROWS = $(strip $(HELIX_ROWS)) is unexpected value) endif -OPT_DEFS += -DHELIX_ROWS=$(strip $(HELIX_ROWS)) -ifeq ($(strip $(LED_BACK_ENABLE)), yes) - RGBLIGHT_ENABLE = yes +ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) OPT_DEFS += -DRGBLED_BACK - ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes') - endif -else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - RGBLIGHT_ENABLE = yes - OPT_DEFS += -DRGBLED_BACK -else - RGBLIGHT_ENABLE = no -endif - -ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes) - OPT_DEFS += -DIOS_DEVICE_ENABLE -endif - -ifeq ($(strip $(LED_ANIMATIONS)), yes) - OPT_DEFS += -DLED_ANIMATIONS endif ifeq ($(strip $(OLED_ENABLE)), yes) - OPT_DEFS += -DOLED_ENABLE SRC += oled.c endif - -ifeq ($(strip $(LOCAL_GLCDFONT)), yes) - OPT_DEFS += -DLOCAL_GLCDFONT -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 - -# Uncomment these for debugging -# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE)) -# $(info -- OPT_DEFS=$(OPT_DEFS)) -# $(info ) diff --git a/keyboards/helix/rev2/keymaps/five_rows/rules.mk b/keyboards/helix/rev2/keymaps/five_rows/rules.mk index fec846ab77f..fb564b6e042 100644 --- a/keyboards/helix/rev2/keymaps/five_rows/rules.mk +++ b/keyboards/helix/rev2/keymaps/five_rows/rules.mk @@ -1,127 +1,35 @@ - -# Build Options +# QMK Standard 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 # -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 -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 -AUDIO_ENABLE = no # Audio output on port C6 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. -SWAP_HANDS_ENABLE = no # Enable one-hand typing - -define HELIX_CUSTOMISE_MSG - $(info Helix customize) - $(info - OLED_ENABLE=$(OLED_ENABLE)) - $(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 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) +# See TOP/keyboards/helix/rules.mk for a list of options that can be set. +# See TOP/docs/config_options.md for more information. +# + 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 LINK_TIME_OPTIMIZATION_ENABLE = 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 Spacific Build Options +# you can uncomment and 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) -### Helix keyboard 'five_rows' keymap: convenient command line option -## make HELIX= 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 - ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes') - endif -else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - RGBLIGHT_ENABLE = yes -else - RGBLIGHT_ENABLE = no -endif - -ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes) - OPT_DEFS += -DIOS_DEVICE_ENABLE -endif - -ifeq ($(strip $(LED_ANIMATIONS)), yes) - 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 - -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - -# Uncomment these for debugging -# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE)) -# $(info -- OPT_DEFS=$(OPT_DEFS)) -# $(info ) +# convert Helix-specific options (that represent combinations of standard options) +# into QMK standard options. +include $(strip $(KEYBOARD_LOCAL_FEATURES_MK)) diff --git a/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk b/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk index 119493ea68f..6c2057cfd6f 100644 --- a/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk +++ b/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk @@ -1,120 +1,23 @@ - -# Build Options +# QMK Standard 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 # -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) -COMMAND_ENABLE = no # Commands for debug and configuration -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 -AUDIO_ENABLE = no # Audio output on port C6 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. -SWAP_HANDS_ENABLE = no # Enable one-hand typing - -define HELIX_CUSTOMISE_MSG - $(info Helix customize) - $(info - OLED_ENABLE=$(OLED_ENABLE)) - $(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 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) +# See TOP/keyboards/helix/rules.mk for a list of options that can be set. +# See TOP/docs/config_options.md for more information. +# LINK_TIME_OPTIMIZATION_ENABLE = 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 Spacific Build Options +# you can uncomment and 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) -### Helix keyboard 'default' keymap: convenient command line option -## make HELIX= helix:defualt -## option= oled | back | under | na | ios -## ex. -## make HELIX=oled helix:defualt -## make HELIX=oled,back helix:defualt -## make HELIX=oled,under helix:defualt -## make HELIX=oled,back,na helix:defualt -## make HELIX=oled,back,ios helix:defualt -## -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 - $(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 - ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes') - endif -else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - RGBLIGHT_ENABLE = yes -else - RGBLIGHT_ENABLE = no -endif - -ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes) - OPT_DEFS += -DIOS_DEVICE_ENABLE -endif - -ifeq ($(strip $(LED_ANIMATIONS)), yes) - 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 - -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - -# Uncomment these for debugging -# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE)) -# $(info -- OPT_DEFS=$(OPT_DEFS)) -# $(info ) +# convert Helix-specific options (that represent combinations of standard options) +# into QMK standard options. +include $(strip $(KEYBOARD_LOCAL_FEATURES_MK)) diff --git a/keyboards/helix/rev2/keymaps/froggy/rules.mk b/keyboards/helix/rev2/keymaps/froggy/rules.mk index bfe902a80ff..bea059ca16d 100644 --- a/keyboards/helix/rev2/keymaps/froggy/rules.mk +++ b/keyboards/helix/rev2/keymaps/froggy/rules.mk @@ -1,120 +1,23 @@ - -# Build Options +# QMK Standard 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 # -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) -COMMAND_ENABLE = no # Commands for debug and configuration -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 -AUDIO_ENABLE = no # Audio output on port C6 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. -SWAP_HANDS_ENABLE = no # Enable one-hand typing - -define HELIX_CUSTOMISE_MSG - $(info Helix customize) - $(info - OLED_ENABLE=$(OLED_ENABLE)) - $(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 7 Variables -# jp: 以下の7つの変数を必要に応じて編集します。 -HELIX_ROWS = 5 # Helix Rows is 4 or 5 -OLED_ENABLE = yes # OLED_ENABLE -LOCAL_GLCDFONT = yes # use each keymaps "helixfont.h" insted of "common/glcdfont.c" -LED_BACK_ENABLE = yes # 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) +# See TOP/keyboards/helix/rules.mk for a list of options that can be set. +# See TOP/docs/config_options.md for more information. +# LINK_TIME_OPTIMIZATION_ENABLE = 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 Spacific Build Options +# you can uncomment and edit follows 7 Variables +# jp: 以下の7つの変数を必要に応じて編集し、コメントアウトをはずします。 +HELIX_ROWS = 5 # Helix Rows is 4 or 5 +OLED_ENABLE = yes # OLED_ENABLE +LOCAL_GLCDFONT = yes # use each keymaps "helixfont.h" insted of "common/glcdfont.c" +LED_BACK_ENABLE = yes # 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) -### Helix keyboard 'default' keymap: convenient command line option -## make HELIX= helix:defualt -## option= oled | back | under | na | ios -## ex. -## make HELIX=oled helix:defualt -## make HELIX=oled,back helix:defualt -## make HELIX=oled,under helix:defualt -## make HELIX=oled,back,na helix:defualt -## make HELIX=oled,back,ios helix:defualt -## -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 - $(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 - ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes') - endif -else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - RGBLIGHT_ENABLE = yes -else - RGBLIGHT_ENABLE = no -endif - -ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes) - OPT_DEFS += -DIOS_DEVICE_ENABLE -endif - -ifeq ($(strip $(LED_ANIMATIONS)), yes) - 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 - -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - -# Uncomment these for debugging -# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE)) -# $(info -- OPT_DEFS=$(OPT_DEFS)) -# $(info ) +# convert Helix-specific options (that represent combinations of standard options) +# into QMK standard options. +include $(strip $(KEYBOARD_LOCAL_FEATURES_MK)) diff --git a/keyboards/helix/rev2/keymaps/led_test/rules.mk b/keyboards/helix/rev2/keymaps/led_test/rules.mk index 4a6f8b8331d..fb0b5a54762 100644 --- a/keyboards/helix/rev2/keymaps/led_test/rules.mk +++ b/keyboards/helix/rev2/keymaps/led_test/rules.mk @@ -1,122 +1,25 @@ - -# Build Options +# QMK Standard 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 # -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) -COMMAND_ENABLE = no # Commands for debug and configuration -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 -AUDIO_ENABLE = no # Audio output on port C6 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. -SWAP_HANDS_ENABLE = no # Enable one-hand typing - -define HELIX_CUSTOMISE_MSG - $(info Helix customize) - $(info - OLED_ENABLE=$(OLED_ENABLE)) - $(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 7 Variables -# jp: 以下の7つの変数を必要に応じて編集します。 -HELIX_ROWS = 5 # Helix Rows is 4 or 5 -OLED_ENABLE = yes # OLED_ENABLE -LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c" -LED_BACK_ENABLE = yes # 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) +# See TOP/keyboards/helix/rules.mk for a list of options that can be set. +# See TOP/docs/config_options.md for more information. +# LINK_TIME_OPTIMIZATION_ENABLE = 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 'default' keymap: convenient command line option -## make HELIX= helix:defualt -## option= oled | back | under | na | ios -## ex. -## make HELIX=oled helix:defualt -## make HELIX=oled,back helix:defualt -## make HELIX=oled,under helix:defualt -## make HELIX=oled,back,na helix:defualt -## make HELIX=oled,back,ios helix:defualt -## -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 - $(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 - ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes') - endif -else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - RGBLIGHT_ENABLE = yes -else - RGBLIGHT_ENABLE = no -endif - -ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes) - OPT_DEFS += -DIOS_DEVICE_ENABLE -endif - -ifeq ($(strip $(LED_ANIMATIONS)), yes) - 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 +# Helix Spacific Build Options +# you can uncomment and edit follows 7 Variables +# jp: 以下の7つの変数を必要に応じて編集し、コメントアウトをはずします。 +# HELIX_ROWS = 5 # Helix Rows is 4 or 5 +OLED_ENABLE = yes # OLED_ENABLE +# LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c" +LED_BACK_ENABLE = yes # 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) SRC += led_test_init.c -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - -# Uncomment these for debugging -# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE)) -# $(info -- OPT_DEFS=$(OPT_DEFS)) -# $(info ) +# convert Helix-specific options (that represent combinations of standard options) +# into QMK standard options. +include $(strip $(KEYBOARD_LOCAL_FEATURES_MK)) diff --git a/keyboards/helix/rev2/keymaps/yshrsmz/rules.mk b/keyboards/helix/rev2/keymaps/yshrsmz/rules.mk index 3f390b48f86..bc823e5e12f 100644 --- a/keyboards/helix/rev2/keymaps/yshrsmz/rules.mk +++ b/keyboards/helix/rev2/keymaps/yshrsmz/rules.mk @@ -1,121 +1,24 @@ - -# Build Options +# QMK Standard 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 # -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) -COMMAND_ENABLE = no # Commands for debug and configuration -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 -AUDIO_ENABLE = no # Audio output on port C6 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. -SWAP_HANDS_ENABLE = no # Enable one-hand typing - -define HELIX_CUSTOMISE_MSG - $(info Helix customize) - $(info - OLED_ENABLE=$(OLED_ENABLE)) - $(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 7 Variables -# jp: 以下の7つの変数を必要に応じて編集します。 -HELIX_ROWS = 4 # Helix Rows is 4 or 5 -OLED_ENABLE = yes # 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 = no # LED animations -IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) - -#### LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE. -#### Do not enable these with audio at the same time. - -### Helix keyboard 'default' keymap: convenient command line option -## make HELIX= helix:defualt -## option= oled | back | under | na | ios -## ex. -## make HELIX=oled helix:defualt -## make HELIX=oled,back helix:defualt -## make HELIX=oled,under helix:defualt -## make HELIX=oled,back,na helix:defualt -## make HELIX=oled,back,ios helix:defualt -## -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 - $(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 - ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes') - endif -else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - RGBLIGHT_ENABLE = yes -else - RGBLIGHT_ENABLE = no -endif - -ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes) - OPT_DEFS += -DIOS_DEVICE_ENABLE -endif - -ifeq ($(strip $(LED_ANIMATIONS)), yes) - 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 - -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - +# See TOP/keyboards/helix/rules.mk for a list of options that can be set. +# See TOP/docs/config_options.md for more information. +# +LINK_TIME_OPTIMIZATION_ENABLE = no # if firmware size over limit, try this option AUTO_SHIFT_ENABLE = yes -# Uncomment these for debugging -# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE)) -# $(info -- OPT_DEFS=$(OPT_DEFS)) -# $(info ) +# Helix Spacific Build Options +# you can uncomment and edit follows 7 Variables +# jp: 以下の7つの変数を必要に応じて編集し、コメントアウトをはずします。 +HELIX_ROWS = 4 # Helix Rows is 4 or 5 +OLED_ENABLE = yes # 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 = no # LED animations +# IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) + +# convert Helix-specific options (that represent combinations of standard options) +# into QMK standard options. +include $(strip $(KEYBOARD_LOCAL_FEATURES_MK)) diff --git a/keyboards/helix/rev2/local_features.mk b/keyboards/helix/rev2/local_features.mk new file mode 100644 index 00000000000..1ca12dd4eaa --- /dev/null +++ b/keyboards/helix/rev2/local_features.mk @@ -0,0 +1,91 @@ +# +# local_features.mk contains post-processing rules for the Helix keyboard. +# +# Post-processing rules convert keyboard-specific shortcuts (that represent +# combinations of standard options) into QMK standard options. +# + +define HELIX_CUSTOMISE_MSG + $(info Helix Spacific Build Options) + $(info - OLED_ENABLE=$(OLED_ENABLE)) + $(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)) + $(info ) +endef + + ifneq ($(strip $(HELIX)),) + ### Helix keyboard keymap: convenient command line option + ## make HELIX= helix: + ## option= oled | back | under | na | ios + ## ex. + ## make HELIX=oled helix: + ## make HELIX=oled,back helix: + ## make HELIX=oled,under helix: + ## make HELIX=oled,back,na helix: + ## make HELIX=oled,back,ios 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 + SHOW_HELIX_OPTIONS = yes + endif + +ifneq ($(strip $(SHOW_HELIX_OPTIONS)),) + $(eval $(call HELIX_CUSTOMISE_MSG)) +endif + +######## +# convert Helix-specific options (that represent combinations of standard options) +# into QMK standard options. + +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 + ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) + $(eval $(call HELIX_CUSTOMISE_MSG)) + $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes') + endif +else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) + RGBLIGHT_ENABLE = yes +endif + +ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes) + OPT_DEFS += -DIOS_DEVICE_ENABLE +endif + +ifeq ($(strip $(LED_ANIMATIONS)), yes) + 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 + +# Uncomment these for debugging +# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE)) +# $(info -- OPT_DEFS=$(OPT_DEFS)) +# $(info ) diff --git a/keyboards/helix/rev2/rules.mk b/keyboards/helix/rev2/rules.mk index f199a7826e5..6d1c9efcc56 100644 --- a/keyboards/helix/rev2/rules.mk +++ b/keyboards/helix/rev2/rules.mk @@ -1,3 +1,5 @@ +KEYBOARD_LOCAL_FEATURES_MK := $(dir $(lastword $(MAKEFILE_LIST)))local_features.mk + SRC += local_drivers/i2c.c SRC += local_drivers/serial.c SRC += local_drivers/ssd1306.c @@ -8,3 +10,12 @@ CUSTOM_MATRIX = yes SRC += rev2/matrix.c SRC += rev2/split_util.c SRC += rev2/split_scomm.c + +# Helix Spacific Build Options default values +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) diff --git a/keyboards/helix/rules.mk b/keyboards/helix/rules.mk index 5607b3226ae..0d34508aaf7 100644 --- a/keyboards/helix/rules.mk +++ b/keyboards/helix/rules.mk @@ -47,10 +47,12 @@ KEYBOARD_TOP_DIR := $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LIST)))) # Interrupt driven control endpoint task(+60) OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT -# Build Options +# QMK Standard 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 # +# See TOP/docs/config_options.md for more information. +# BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) MOUSEKEY_ENABLE = no # Mouse keys(+4700) EXTRAKEY_ENABLE = no # Audio control and System control(+450)