2
0

rules.mk 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  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
  9. COMMAND_ENABLE = no # Commands for debug and configuration
  10. # CONSOLE_ENABLE and COMMAND_ENABLE
  11. # yes, no +1500
  12. # yes, yes +3200
  13. # no, yes +400
  14. NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
  15. BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
  16. MIDI_ENABLE = no # MIDI controls
  17. AUDIO_ENABLE = no # Audio output on port C6
  18. UNICODE_ENABLE = no # Unicode
  19. BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
  20. RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
  21. SWAP_HANDS_ENABLE = no # Enable one-hand typing
  22. define HELIX_CUSTOMISE_MSG
  23. $(info Helix customize)
  24. $(info - OLED_ENABLE=$(OLED_ENABLE))
  25. $(info - LED_BACK_ENABLE=$(LED_BACK_ENABLE))
  26. $(info - LED_UNDERGLOW_ENABLE=$(LED_UNDERGLOW_ENABLE))
  27. $(info - LED_ANIMATION=$(LED_ANIMATIONS))
  28. $(info - IOS_DEVICE_ENABLE=$(IOS_DEVICE_ENABLE))
  29. endef
  30. # Helix keyboard customize
  31. # you can edit follows 7 Variables
  32. # jp: 以下の7つの変数を必要に応じて編集します。
  33. HELIX_ROWS = 5 # Helix Rows is 4 or 5
  34. OLED_ENABLE = no # OLED_ENABLE
  35. LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c"
  36. LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.)
  37. LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.)
  38. LED_ANIMATIONS = yes # LED animations
  39. IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
  40. Link_Time_Optimization = no # if firmware size over limit, try this option
  41. #### LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE.
  42. #### Do not enable these with audio at the same time.
  43. ### Helix keyboard 'five_rows' keymap: convenient command line option
  44. ## make HELIX=<options> helix:five_rows
  45. ## option= oled | back | under | na | ios
  46. ## ex.
  47. ## make HELIX=oled helix:five_rows
  48. ## make HELIX=oled,back helix:five_rows
  49. ## make HELIX=oled,under helix:five_rows
  50. ## make HELIX=oled,back,na helix:five_rows
  51. ## make HELIX=oled,back,ios helix:five_rows
  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. ifeq ($(findstring console,$(HELIX)), console)
  69. CONSOLE_ENABLE = yes
  70. endif
  71. $(eval $(call HELIX_CUSTOMISE_MSG))
  72. $(info )
  73. endif
  74. # Uncomment these for checking
  75. # jp: コンパイル時にカスタマイズの状態を表示したい時はコメントをはずします。
  76. # $(eval $(call HELIX_CUSTOMISE_MSG))
  77. # $(info )
  78. ifneq ($(strip $(HELIX_ROWS)), 4)
  79. ifneq ($(strip $(HELIX_ROWS)), 5)
  80. $(error HELIX_ROWS = $(strip $(HELIX_ROWS)) is unexpected value)
  81. endif
  82. endif
  83. OPT_DEFS += -DHELIX_ROWS=$(strip $(HELIX_ROWS))
  84. ifeq ($(strip $(LED_BACK_ENABLE)), yes)
  85. RGBLIGHT_ENABLE = yes
  86. OPT_DEFS += -DRGBLED_BACK
  87. ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes)
  88. $(eval $(call HELIX_CUSTOMISE_MSG))
  89. $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes')
  90. endif
  91. else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes)
  92. RGBLIGHT_ENABLE = yes
  93. else
  94. RGBLIGHT_ENABLE = no
  95. endif
  96. ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
  97. OPT_DEFS += -DIOS_DEVICE_ENABLE
  98. endif
  99. ifeq ($(strip $(LED_ANIMATIONS)), yes)
  100. OPT_DEFS += -DLED_ANIMATIONS
  101. endif
  102. ifeq ($(strip $(OLED_ENABLE)), yes)
  103. OPT_DEFS += -DOLED_ENABLE
  104. endif
  105. ifeq ($(strip $(LOCAL_GLCDFONT)), yes)
  106. OPT_DEFS += -DLOCAL_GLCDFONT
  107. endif
  108. ifeq ($(strip $(Link_Time_Optimization)),yes)
  109. EXTRAFLAGS += -flto -DUSE_Link_Time_Optimization
  110. endif
  111. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
  112. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
  113. # Uncomment these for debugging
  114. # $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE))
  115. # $(info -- OPT_DEFS=$(OPT_DEFS))
  116. # $(info )