]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/helix/rev2/keymaps/edvorakjp/rules.mk
Keyboard: fixed build break (size overflow) HelixPico with Backlight or Underglow...
[qmk_firmware.git] / keyboards / helix / rev2 / keymaps / edvorakjp / rules.mk
1 # Build Options
2 #   change to "no" to disable the options, or define them in the Makefile in
3 #   the appropriate keymap folder that will get included automatically
4 #
5 BOOTMAGIC_ENABLE = no       # Virtual DIP switch configuration(+1000)
6 MOUSEKEY_ENABLE = no        # Mouse keys(+4700)
7 EXTRAKEY_ENABLE = no        # Audio control and System control(+450)
8 CONSOLE_ENABLE = no         # Console for debug(+400)
9 COMMAND_ENABLE = no         # Commands for debug and configuration
10 NKRO_ENABLE = no            # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
11 BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
12 MIDI_ENABLE = no            # MIDI controls
13 AUDIO_ENABLE = no           # Audio output on port C6
14 UNICODE_ENABLE = no         # Unicode
15 BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
16 RGBLIGHT_ENABLE = no        # Enable WS2812 RGB underlight.  Do not enable this with audio at the same time.
17 SWAP_HANDS_ENABLE = no      # Enable one-hand typing
18
19 define HELIX_CUSTOMISE_MSG
20   $(info Helix customize)
21   $(info -  OLED_ENABLE=$(OLED_ENABLE))
22   $(info -  LED_BACK_ENABLE=$(LED_BACK_ENABLE))
23   $(info -  LED_UNDERGLOW_ENABLE=$(LED_UNDERGLOW_ENABLE))
24   $(info -  LED_ANIMATION=$(LED_ANIMATIONS))
25   $(info -  IOS_DEVICE_ENABLE=$(IOS_DEVICE_ENABLE))
26 endef
27
28 # Helix keyboard customize
29 # you can edit follows 7 Variables
30 #  jp: 以下の7つの変数を必要に応じて編集します。
31 HELIX_ROWS = 5              # Helix Rows is 4 or 5
32 OLED_ENABLE = no            # OLED_ENABLE
33 LOCAL_GLCDFONT = no         # use each keymaps "helixfont.h" instead of "common/glcdfont.c"
34 LED_BACK_ENABLE = no        # LED backlight (Enable WS2812 RGB underlight.)
35 LED_UNDERGLOW_ENABLE = no   # LED underglow (Enable WS2812 RGB underlight.)
36 LED_ANIMATIONS = yes        # LED animations
37 IOS_DEVICE_ENABLE = no      # connect to IOS device (iPad,iPhone)
38 Link_Time_Optimization = no # if firmware size over limit, try this option
39
40 ####  LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE.
41 ####    Do not enable these with audio at the same time.
42
43 ### Helix keyboard 'edvorakjp' keymap: convenient command line option
44 ##    make HELIX=<options> helix:edvorakjp
45 ##    option= oled | back | under | na | ios
46 ##    ex.
47 ##      make HELIX=oled          helix:edvorakjp
48 ##      make HELIX=oled,back     helix:edvorakjp
49 ##      make HELIX=oled,under    helix:edvorakjp
50 ##      make HELIX=oled,back,na  helix:edvorakjp
51 ##      make HELIX=oled,back,ios helix:edvorakjp
52 ##
53 ifneq ($(strip $(HELIX)),)
54   ifeq ($(findstring oled,$(HELIX)), oled)
55     OLED_ENABLE = yes
56   endif
57   ifeq ($(findstring back,$(HELIX)), back)
58     LED_BACK_ENABLE = yes
59   else ifeq ($(findstring under,$(HELIX)), under)
60     LED_UNDERGLOW_ENABLE = yes
61   endif
62   ifeq ($(findstring na,$(HELIX)), na)
63     LED_ANIMATIONS = no
64   endif
65   ifeq ($(findstring ios,$(HELIX)), ios)
66     IOS_DEVICE_ENABLE = yes
67   endif
68   $(eval $(call HELIX_CUSTOMISE_MSG))
69   $(info )
70 endif
71
72 # Uncomment these for checking
73 #   jp: コンパイル時にカスタマイズの状態を表示したい時はコメントをはずします。
74 # $(eval $(call HELIX_CUSTOMISE_MSG))
75 # $(info )
76
77 ifeq ($(strip $(HELIX_ROWS)), 4)
78   SRC += keymap_4rows.c
79 else ifeq ($(strip $(HELIX_ROWS)), 5)
80   SRC += keymap_5rows.c
81 else
82   $(error HELIX_ROWS = $(strip $(HELIX_ROWS)) is unexpected value)
83 endif
84 OPT_DEFS += -DHELIX_ROWS=$(strip $(HELIX_ROWS))
85
86 ifeq ($(strip $(LED_BACK_ENABLE)), yes)
87   RGBLIGHT_ENABLE = yes
88   OPT_DEFS += -DRGBLED_BACK
89   ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes)
90     $(eval $(call HELIX_CUSTOMISE_MSG))
91     $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes')
92   endif
93 else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes)
94   RGBLIGHT_ENABLE = yes
95   OPT_DEFS += -DRGBLED_BACK
96 else
97   RGBLIGHT_ENABLE = no
98 endif
99
100 ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
101   OPT_DEFS += -DIOS_DEVICE_ENABLE
102 endif
103
104 ifeq ($(strip $(LED_ANIMATIONS)), yes)
105   OPT_DEFS += -DRGBLIGHT_ANIMATIONS
106 endif
107
108 ifeq ($(strip $(OLED_ENABLE)), yes)
109   OPT_DEFS += -DOLED_ENABLE
110   SRC += oled.c
111 endif
112
113 ifeq ($(strip $(LOCAL_GLCDFONT)), yes)
114   OPT_DEFS += -DLOCAL_GLCDFONT
115 endif
116
117 ifeq ($(strip $(Link_Time_Optimization)),yes)
118     EXTRAFLAGS += -flto -DUSE_Link_Time_Optimization
119 endif
120
121 # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
122 SLEEP_LED_ENABLE = no    # Breathing sleep LED during USB suspend
123
124 ifndef QUANTUM_DIR
125   include ../../../../Makefile
126 endif
127
128 # Uncomment these for debugging
129 # $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE))
130 # $(info -- OPT_DEFS=$(OPT_DEFS))
131 # $(info )