qmk

Unnamed repository; edit this file 'description' to name the repository.
git clone git://git.z3bra.org/qmk.git
Log | Files | Refs | Submodules | LICENSE

rules.mk (4411B)


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