0c1e003e |
1 | CC = $(CROSS_COMPILE)gcc |
2 | CXX = $(CROSS_COMPILE)g++ |
3 | OBJCOPY = $(CROSS_COMPILE)objcopy |
4 | SIZE = $(CROSS_COMPILE)size |
5 | |
6 | TOOLSPATH = tools |
7 | |
8 | TARGET = test |
9 | |
10 | # CPPFLAGS += -DUSB_SERIAL -DLAYOUT_US_ENGLISH |
11 | CPPFLAGS += -D__MK20DX256__ -DF_CPU=48000000 |
12 | CPPFLAGS += -DUSB_RAWHID |
13 | CPPFLAGS += -Wall -g -Os -mcpu=cortex-m4 -mthumb -nostdlib # -MMD |
14 | CXXFLAGS += -std=gnu++0x -felide-constructors -fno-exceptions -fno-rtti |
15 | LDFLAGS = -Os -Wl,--gc-sections -mcpu=cortex-m4 -mthumb -Tteensy3/mk20dx256.ld |
16 | LDLIBS += -lm |
17 | |
18 | C_FILES := $(wildcard *.c) |
19 | CT_FILES := $(wildcard teensy3/*.c) |
20 | OBJS += $(C_FILES:.c=.o) $(CT_FILES:.c=.o) |
21 | |
22 | all: $(TARGET).hex |
23 | |
24 | $(TARGET).elf: $(OBJS) $(LDSCRIPT) |
25 | $(CC) $(LDFLAGS) -o "$@" $(OBJS) $(LDLIBS) |
26 | |
27 | %.hex: %.elf |
28 | $(SIZE) "$<" |
29 | $(OBJCOPY) -O ihex -R .eeprom "$<" "$@" |
30 | |
31 | clean: |
32 | $(RM) $(TARGET).hex $(TARGET).elf $(OBJS) |
33 | |
34 | up: $(TARGET).hex |
35 | teensy_loader_cli -mmcu=mk20dx128 -w $< |