]>
Commit | Line | Data |
---|---|---|
1 | include_rules | |
2 | ||
3 | PROG = stamp-test | |
4 | SRC = main.c | |
5 | SRC += cli.c cli_readline.c command.c command_tbl.c | |
6 | SRC += cmd_help.c cmd_echo.c cmd_date.c cmd_mem.c cmd_boot.c | |
7 | SRC += env.c xmalloc.c date.c | |
8 | SRC += timer.c con-utils.c serial.c i2c.c pcf8583.c | |
9 | SRC += background.c z180-serv.c z80-if.c | |
10 | ||
11 | SRC_Z = ../z180/hdrom.c | |
12 | ||
13 | #TARGETS = $(PROG).elf | |
14 | ||
15 | MCU_TARGET = atmega1281 | |
16 | F_CPU = 18432000UL | |
17 | DEFS = -DF_CPU=$(F_CPU) -DBAUD=115200UL | |
18 | ||
19 | INCLUDES += -I$(TOP)/include | |
20 | ||
21 | #INCLUDES += -I../z180 | |
22 | ||
23 | ############################################################################### | |
24 | ||
25 | TOOLCHAINDIR = | |
26 | TOOLCHAIN = avr | |
27 | ||
28 | CC = $(TOOLCHAIN)-gcc | |
29 | LD = $(TOOLCHAIN)-gcc | |
30 | AR = $(TOOLCHAIN)-ar | |
31 | AS = $(TOOLCHAIN)-as | |
32 | OBJCOPY = $(TOOLCHAIN)-objcopy | |
33 | OBJDUMP = $(TOOLCHAIN)-objdump | |
34 | SIZE = $(TOOLCHAIN)-size | |
35 | GDB = $(TOOLCHAIN)-gdb | |
36 | ||
37 | ############################################################################### | |
38 | ||
39 | ifdef DEBUG | |
40 | SRC += debug.c | |
41 | DEFS += -DDEBUG=2 | |
42 | endif | |
43 | ||
44 | CFLAGS = -g -Os | |
45 | CFLAGS += -mmcu=$(MCU_TARGET) | |
46 | CFLAGS += -std=gnu99 | |
47 | CFLAGS += -Wall -Wextra | |
48 | CFLAGS += -Wredundant-decls | |
49 | CFLAGS += -mrelax | |
50 | CFLAGS += -fno-common | |
51 | CFLAGS += -ffunction-sections | |
52 | CFLAGS += -fdata-sections | |
53 | CFLAGS += -fno-tree-loop-optimize | |
54 | CFLAGS += -fno-move-loop-invariants | |
55 | #CFLAGS += -flto | |
56 | CFLAGS += -fshort-enums | |
57 | ||
58 | #CFLAGS += -save-temps | |
59 | ||
60 | ||
61 | CFLAGS += $(INCLUDES) | |
62 | ||
63 | CPPFLAGS += $(DEFS) | |
64 | ||
65 | # Linker flags | |
66 | LDFLAGS += -Wl,--gc-sections | |
67 | LDFLAGS += -Wl,--cref | |
68 | ||
69 | ||
70 | !cc = |> ^ CC %f^ $(CC) $(CFLAGS) $(CPPFLAGS) -c %f -o %o |> %B.o | |
71 | !LINK = |> ^ LINK %o^ $(LD) $(CFLAGS) $(LDFLAGS) -Wl,-Map=%O.map %f $(LDLIBS) -o %o |> | %O.map | |
72 | !OBJCOPY= |> ^ OBJCOPY %o^ $(OBJCOPY) -Oihex %f %o |> | |
73 | !OBJDUMP= |> ^ OBJDUMP %o^ $(OBJDUMP) -h -S %f > %o |> %O.lss | |
74 | !SIZE = |> ^ SIZE^ $(SIZE) %f |> | |
75 | ||
76 | : foreach $(SRC) | ../z180/hdrom.h |> !cc |> {objs} | |
77 | : $(SRC_Z) |> !cc -D'const=const __flash' |> {objs} | |
78 | ||
79 | : {objs} |> !LINK |> $(PROG).elf | |
80 | : $(PROG).elf |> !OBJCOPY |> %B.hex | |
81 | : $(PROG).elf |> !OBJDUMP |> %B.lss | |
82 | : $(PROG).elf |> !SIZE |> | |
83 |