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