fc660c: Add initial files
[tmk_keyboard.git] / keyboard / fc660c / Makefile
CommitLineData
36a29a58
JW
1# Target name
2TARGET ?= fc660c
3
4# Location of tmk_core
5TMK_DIR ?= ../../tmk_core
6
7# Location of target dependent files exist
8TARGET_DIR ?= .
9
10
11# List C source files
12SRC ?= matrix.c \
13 led.c
14
15# Configure file
16CONFIG_H ?= config.h
17
18
19# MCU name
20MCU ?= atmega32u4
21
22# Processor frequency.
23# This will define a symbol, F_CPU, in all source code files equal to the
24# processor frequency in Hz. You can then use this symbol in your source code to
25# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
26# automatically to create a 32-bit value in your source code.
27#
28# This will be an integer division of F_USB below, as it is sourced by
29# F_USB after it has run through any CPU prescalers. Note that this value
30# does not *change* the processor frequency - it should merely be updated to
31# reflect the processor speed set externally so that the code can use accurate
32# software delays.
33F_CPU ?= 16000000
34
35
36#
37# LUFA specific
38#
39# Target architecture (see library "Board Types" documentation).
40ARCH ?= AVR8
41
42# Input clock frequency.
43# This will define a symbol, F_USB, in all source code files equal to the
44# input clock frequency (before any prescaling is performed) in Hz. This value may
45# differ from F_CPU if prescaling is used on the latter, and is required as the
46# raw input clock is fed directly to the PLL sections of the AVR for high speed
47# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
48# at the end, this will be done automatically to create a 32-bit value in your
49# source code.
50#
51# If no clock division is performed on the input clock inside the AVR (via the
52# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
53F_USB ?= $(F_CPU)
54
55# Interrupt driven control endpoint task
56OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
57
58
59# Boot Section Size in *bytes*
60# Teensy halfKay 512
61# Teensy++ halfKay 1024
62# Atmel DFU loader 4096 (TMK Alt Controller)
63# LUFA bootloader 4096
64# USBaspLoader 2048
65OPT_DEFS += -DBOOTLOADER_SIZE=4096
66
67
68# Build Options
69# comment out to disable the options.
70#
71#BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration
72MOUSEKEY_ENABLE ?= yes # Mouse keys
73EXTRAKEY_ENABLE ?= yes # Audio control and System control
74CONSOLE_ENABLE ?= yes # Console for debug
75COMMAND_ENABLE ?= yes # Commands for debug and configuration
76NKRO_ENABLE ?= yes # USB Nkey Rollover
77#HHKB_JP ?= yes # HHKB JP support
78#UNIMAP_ENABLE ?= yes # Universal keymap
79#ACTIONMAP_ENABLE ?= yes # Use 16bit actionmap instead of 8bit keymap
80#KEYMAP_SECTION_ENABLE ?= yes # fixed address keymap for keymap editor
81
82#OPT_DEFS += -DNO_ACTION_TAPPING
83#OPT_DEFS += -DNO_ACTION_LAYER
84#OPT_DEFS += -DNO_ACTION_MACRO
85
86
87#
88# Keymap file
89#
90ifeq (yes,$(strip $(UNIMAP_ENABLE)))
91 KEYMAP_FILE = unimap
92else
93 ifeq (yes,$(strip $(ACTIONMAP_ENABLE)))
94 KEYMAP_FILE = actionmap
95 else
96 KEYMAP_FILE = keymap
97 endif
98endif
99ifdef KEYMAP
100 SRC := $(KEYMAP_FILE)_$(KEYMAP).c $(SRC)
101else
102 SRC := $(KEYMAP_FILE).c $(SRC)
103endif
104
105
106# Search Path
107VPATH += $(TARGET_DIR)
108VPATH += $(TMK_DIR)
109
110ifeq (yes,$(strip $(RN42_ENABLE)))
111include rn42.mk
112include $(TMK_DIR)/protocol.mk
113endif
114include $(TMK_DIR)/protocol/lufa.mk
115include $(TMK_DIR)/common.mk
116include $(TMK_DIR)/rules.mk
Imprint / Impressum