Fix Makefile for NKRO comment
[tmk_keyboard.git] / keyboard / gh60 / Makefile
CommitLineData
c009f464 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# Target file name (without extension).
42TARGET = gh60_lufa
43
44# Directory common source filess exist
7860d099 45TMK_DIR = ../../tmk_core
c009f464 46
47# Directory keyboard dependent files exist
48TARGET_DIR = .
49
ef8439bd 50# project specific files
7b31d1b9 51SRC = matrix.c \
c009f464 52 led.c
4e36159b 53
22e29369 54ifdef KEYMAP
55 SRC := keymap_$(KEYMAP).c $(SRC)
56else
57 SRC := keymap_poker.c $(SRC)
58endif
c009f464 59
60CONFIG_H = config.h
61
62
63# MCU name
64#MCU = at90usb1287
65MCU = atmega32u4
66
67# Processor frequency.
68# This will define a symbol, F_CPU, in all source code files equal to the
69# processor frequency in Hz. You can then use this symbol in your source code to
70# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
71# automatically to create a 32-bit value in your source code.
72#
73# This will be an integer division of F_USB below, as it is sourced by
74# F_USB after it has run through any CPU prescalers. Note that this value
75# does not *change* the processor frequency - it should merely be updated to
76# reflect the processor speed set externally so that the code can use accurate
77# software delays.
78F_CPU = 16000000
79
80
81#
82# LUFA specific
83#
84# Target architecture (see library "Board Types" documentation).
85ARCH = AVR8
86
87# Input clock frequency.
88# This will define a symbol, F_USB, in all source code files equal to the
89# input clock frequency (before any prescaling is performed) in Hz. This value may
90# differ from F_CPU if prescaling is used on the latter, and is required as the
91# raw input clock is fed directly to the PLL sections of the AVR for high speed
92# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
93# at the end, this will be done automatically to create a 32-bit value in your
94# source code.
95#
96# If no clock division is performed on the input clock inside the AVR (via the
97# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
98F_USB = $(F_CPU)
99
1385058f 100# Interrupt driven control endpoint task(+60)
22e29369 101OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
1385058f 102
c009f464 103
353a9b56 104# Boot Section Size in *bytes*
f57a4426 105# Teensy halfKay 512
353a9b56 106# Teensy++ halfKay 1024
f57a4426 107# Atmel DFU loader 4096
108# LUFA bootloader 4096
353a9b56 109# USBaspLoader 2048
110OPT_DEFS += -DBOOTLOADER_SIZE=4096
f57a4426 111
112
c009f464 113# Build Options
114# comment out to disable the options.
115#
ef8439bd 116BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000)
1385058f 117MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
118EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
119CONSOLE_ENABLE = yes # Console for debug(+400)
9a3edb89 120COMMAND_ENABLE = yes # Commands for debug and configuration
4e7ec43c 121#SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend
8b509aa1 122NKRO_ENABLE = yes # USB Nkey Rollover
c009f464 123
124
db024b6b 125# Optimize size but this may cause error "relocation truncated to fit"
9a3edb89 126#EXTRALDFLAGS = -Wl,--relax
db024b6b 127
c009f464 128# Search Path
129VPATH += $(TARGET_DIR)
b4e2d325 130VPATH += $(TMK_DIR)
c009f464 131
b4e2d325 132include $(TMK_DIR)/protocol/lufa.mk
133include $(TMK_DIR)/common.mk
134include $(TMK_DIR)/rules.mk
Imprint / Impressum