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 (4330B)


      1 #----------------------------------------------------------------------------
      2 # On command line:
      3 #
      4 # make all = Make software.
      5 #
      6 # make clean = Clean out built project files.
      7 #
      8 # make coff = Convert ELF to AVR COFF.
      9 #
     10 # make extcoff = Convert ELF to AVR Extended COFF.
     11 #
     12 # make program = Download the hex file to the device.
     13 #                Please customize your programmer settings(PROGRAM_CMD)
     14 #
     15 # make teensy = Download the hex file to the device, using teensy_loader_cli.
     16 #               (must have teensy_loader_cli installed).
     17 #
     18 # make dfu = Download the hex file to the device, using dfu-programmer (must
     19 #            have dfu-programmer installed).
     20 #
     21 # make flip = Download the hex file to the device, using Atmel FLIP (must
     22 #             have Atmel FLIP installed).
     23 #
     24 # make dfu-ee = Download the eeprom file to the device, using dfu-programmer
     25 #               (must have dfu-programmer installed).
     26 #
     27 # make flip-ee = Download the eeprom file to the device, using Atmel FLIP
     28 #                (must have Atmel FLIP installed).
     29 #
     30 # make debug = Start either simulavr or avarice as specified for debugging, 
     31 #              with avr-gdb or avr-insight as the front end for debugging.
     32 #
     33 # make filename.s = Just compile filename.c into the assembler code only.
     34 #
     35 # make filename.i = Create a preprocessed source file for use in submitting
     36 #                   bug reports to the GCC project.
     37 #
     38 # To rebuild project do "make clean" then "make all".
     39 #----------------------------------------------------------------------------
     40 
     41 # MCU name
     42 MCU = atmega32u4
     43 
     44 # Processor frequency.
     45 #     This will define a symbol, F_CPU, in all source code files equal to the
     46 #     processor frequency in Hz. You can then use this symbol in your source code to
     47 #     calculate timings. Do NOT tack on a 'UL' at the end, this will be done
     48 #     automatically to create a 32-bit value in your source code.
     49 #
     50 #     This will be an integer division of F_USB below, as it is sourced by
     51 #     F_USB after it has run through any CPU prescalers. Note that this value
     52 #     does not *change* the processor frequency - it should merely be updated to
     53 #     reflect the processor speed set externally so that the code can use accurate
     54 #     software delays.
     55 F_CPU = 16000000
     56 
     57 
     58 #
     59 # LUFA specific
     60 #
     61 # Target architecture (see library "Board Types" documentation).
     62 ARCH = AVR8
     63 
     64 # Input clock frequency.
     65 #     This will define a symbol, F_USB, in all source code files equal to the
     66 #     input clock frequency (before any prescaling is performed) in Hz. This value may
     67 #     differ from F_CPU if prescaling is used on the latter, and is required as the
     68 #     raw input clock is fed directly to the PLL sections of the AVR for high speed
     69 #     clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
     70 #     at the end, this will be done automatically to create a 32-bit value in your
     71 #     source code.
     72 #
     73 #     If no clock division is performed on the input clock inside the AVR (via the
     74 #     CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
     75 F_USB = $(F_CPU)
     76 
     77 # Interrupt driven control endpoint task(+60)
     78 OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
     79 
     80 
     81 # Boot Section Size in *bytes*
     82 #   Teensy halfKay   512
     83 #   Teensy++ halfKay 1024
     84 #   Atmel DFU loader 4096
     85 #   LUFA bootloader  4096
     86 #   USBaspLoader     2048
     87 OPT_DEFS += -DBOOTLOADER_SIZE=4096
     88 
     89 
     90 # Build Options
     91 #   comment out to disable the options.
     92 #
     93 BOOTMAGIC_ENABLE = yes		# Virtual DIP switch configuration(+1000)
     94 MOUSEKEY_ENABLE = yes		# Mouse keys(+4700)
     95 EXTRAKEY_ENABLE = yes		# Audio control and System control(+450)
     96 # CONSOLE_ENABLE = yes		# Console for debug(+400)
     97 # COMMAND_ENABLE = yes		# Commands for debug and configuration
     98 KEYBOARD_LOCK_ENABLE = yes	# Allow locking of keyboard via magic key
     99 # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
    100 SLEEP_LED_ENABLE = yes	    # Breathing sleep LED during USB suspend
    101 NKRO_ENABLE = yes		    # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
    102 # BACKLIGHT_ENABLE = yes	# Enable keyboard backlight functionality
    103 # MIDI_ENABLE = YES		# MIDI controls
    104 # UNICODE_ENABLE = YES		# Unicode
    105 # BLUETOOTH_ENABLE = yes	# Enable Bluetooth with the Adafruit EZ-Key HID
    106 RGBLIGHT_ENABLE = yes    # Enable RGB Underglow
    107