forked from qmk/qmk_firmware
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Keyboard] Cleanup helix rules options (qmk#6952)
* add temporary test shell-spript * Use LINK_TIME_OPTIMIZATION_ENABLE instead of Link_Time_Optimization No change in build result. * Helix config.h use '#pragma once' No change in build result. * Helix helix.h,rev?/rev?.h,pico/pico.h use '#pragma once' No change in build result. * Use drivers/avr/pro_micro.h instead of keyboards/helix/pro_micro.h No change in build result. * remove keyboards/helix/{rev2|pico}/serial_config.h No change in build result. * 'HELIX_ROWS' macro is now referenced only in rev1/config.h and rev2/config.h. No change in build result. * The contents of helix/rules.mk were distributed to subdirectories. This is a preparation to create a new subdirectory for helix code using split_common. No change in build result. remove 'USE_I2C = yes', 'SUBPROJECT_rev1 = no' from keyboards/helix/rules.mk. follow code move from keyboards/helix/rules.mk to keyboards/helix/{rev1,rev2,pico}/rules.mk. ---- SRC += i2c.c SRC += serial.c SRC += ssd1306.c CUSTOM_MATRIX = yes --- * helix/{i2c.[ch], serial.[ch], ssd1306.[ch]} move into helix/local_drivers/ No change in build result. * Simplified 'helix/pico/keymap/*/rules.mk' using KEYBOARD_LOCAL_FEATURES_MK. No change in build result. * add keyboards/helix/pico/local_features.mk * add 'KEYBOARD_LOCAL_FEATURES_MK := $(dir $(lastword $(MAKEFILE_LIST)))local_features.mk' into keyboards/helix/pico/rules.mk * remove HELIX_CUSTOMISE_MSG from keyboards/helix/pico/keymaps/*/rules.mk * remove HELIX= process from keyboards/helix/pico/keymaps/*/rules.mk * remove convert code(helix to standaerd) from keyboards/helix/pico/keymaps/*/rules.mk * add 'include $(strip $(KEYBOARD_LOCAL_FEATURES_MK))' into keyboards/helix/pico/keymaps/*/rules.mk * 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 * Added helix keyboard build NEW method. No change in build result. ## Helix build $ make helix:default ## no oled, no backlight, no underglow $ make helix/rev2/back:default ## no oled, with backlight, no underglow $ make helix/rev2/under:default ## no oled, no backlight, with underglow $ make helix/rev2/oled:default ## with oled, no backlight, not underglow $ make helix/rev2/oled/back:default ## with oled, with backlight, no underglow $ make helix/rev2/back/oled:default ## with oled, with backlight, no underglow $ make helix/rev2/oled/under:default ## with oled, no backlight, with underglow $ make helix/rev2/under/oled:default ## with oled, no backlight, with underglow ## Helix pico build $ make helix/pico:default ## no oled, no backlight, no underglow $ make helix/pico/back:default ## no oled, with backlight, no underglow $ make helix/pico/under:default ## no oled, no backlight, with underglow $ make helix/pico/oled:default ## with oled, no backlight, not underglow * add temporary test shell-spript * test end remove test script. Revert "add temporary test shell-spript" This reverts commit 5dac20c. * test end remove test script. Revert "add temporary test shell-spript" This reverts commit ec49f63. * Extended the 'HELIX=' option. add keyword 'verbose', 'no_ani'. No change in build result. * update keyboards/helix/{rev2,pico}/keymaps/default/readme.md * rename KEYBOARD_TOP_DIR to HELIX_TOP_DIR in rules.mk * update keyboards/helix/{rev2,pico}/keymaps/default/readme_jp.md * rm keyboards/helix/pico/oled/rules.mk * update helix's readmes. All the ':avrdude' was replaced with ':flash'. * remove F_CPU, ARCH, F_USB, INTERRUPT_CONTROL_ENDPOINT from helix/rules.mk No change in build result.
- Loading branch information
1 parent
949b265
commit 611c451
Showing
54 changed files
with
646 additions
and
1,774 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
LED_BACK_ENABLE = yes |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,125 +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) | ||
# See TOP/keyboards/helix/rules.mk for a list of options that can be set. | ||
# See TOP/docs/config_options.md for more information. | ||
# | ||
EXTRAKEY_ENABLE = yes # 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 = yes # Audio output on port B5 | ||
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 6 Variables | ||
# jp: 以下の6つの変数を必要に応じて編集します。 | ||
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 = no # 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 'default' keymap: convenient command line option | ||
## make HELIX=<options> 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 ) | ||
|
||
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 | ||
|
||
ifeq ($(strip $(AUDIO_ENABLE)),yes) | ||
ifeq ($(strip $(RGBLIGHT_ENABLE)),yes) | ||
Link_Time_Optimization = yes | ||
endif | ||
ifeq ($(strip $(OLED_ENABLE)),yes) | ||
Link_Time_Optimization = yes | ||
endif | ||
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 | ||
|
||
# Uncomment these for debugging | ||
# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE)) | ||
# $(info -- OPT_DEFS=$(OPT_DEFS)) | ||
# $(info ) | ||
LINK_TIME_OPTIMIZATION_ENABLE = no # if firmware size over limit, try this option | ||
|
||
# Helix Spacific Build Options | ||
# you can uncomment and edit follows 6 Variables | ||
# jp: 以下の6つの変数を必要に応じて編集し、コメントアウトをはずします。 | ||
# 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 = 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)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.