summaryrefslogtreecommitdiff
path: root/avr/Tupfile
diff options
context:
space:
mode:
Diffstat (limited to 'avr/Tupfile')
-rw-r--r--avr/Tupfile37
1 files changed, 28 insertions, 9 deletions
diff --git a/avr/Tupfile b/avr/Tupfile
index 72f7e71..b43a822 100644
--- a/avr/Tupfile
+++ b/avr/Tupfile
@@ -1,13 +1,8 @@
include_rules
PROG = z180-stamp-avr
-
SRC = z180-stamp-avr.c serial.c z80-if.c
-
SRC_Z = ../z180/hdrom.c
-PREDEP = ../z180/hdrom.h
-
-#SRC += $(SRC_Z)
#TARGETS = $(PROG).elf
MCU_TARGET = atmega1281
@@ -21,23 +16,47 @@ INCLUDES += ../z180
TOOLCHAINDIR =
TOOLCHAIN = avr
+CC = $(TOOLCHAIN)-gcc
+LD = $(TOOLCHAIN)-gcc
+AR = $(TOOLCHAIN)-ar
+AS = $(TOOLCHAIN)-as
+OBJCOPY = $(TOOLCHAIN)-objcopy
+OBJDUMP = $(TOOLCHAIN)-objdump
+SIZE = $(TOOLCHAIN)-size
+GDB = $(TOOLCHAIN)-gdb
+
###############################################################################
ifdef DEBUG
DEFS += -DDEBUG=2
endif
+CFLAGS = -g -Os
CFLAGS += -mmcu=$(MCU_TARGET)
-
+CFLAGS += -std=gnu99
+CFLAGS += -Wall -Wextra -Wimplicit-function-declaration
+CFLAGS += -Wredundant-decls
+#CFLAGS += -fno-common -ffunction-sections -fdata-sections
#CFLAGS += -I $(INCLUDES)
CPPFLAGS += $(DEFS)
-CPPFLAGS_Z += -D'const=const __flash'
-
# Linker flags
LDFLAGS += -Wl,--gc-sections
LDFLAGS += -Wl,--cref
-include $(CONFIG)/gcc.tup
+!cc = |> ^ CC %f^ $(CC) $(CFLAGS) $(CPPFLAGS) -c %f -o %o |> %B.o
+!LINK = |> ^ LINK %o^ $(LD) $(CFLAGS) $(LDFLAGS) -Wl,-Map=%O.map %f $(LDLIBS) -o %o |> | %O.map
+!OBJCOPY= |> ^ OBJCOPY %o^ $(OBJCOPY) -Oihex %f %o |>
+!OBJDUMP= |> ^ OBJDUMP %o^ $(OBJDUMP) -h -S %f > %o |> %O.lss
+!SIZE = |> ^ SIZE^ $(SIZE) %f |>
+
+: foreach $(SRC) | ../z180/hdrom.h |> !cc |> {objs}
+: $(SRC_Z) |> !cc -D'const=const __flash' |> {objs}
+
+: {objs} |> !LINK |> $(PROG).elf
+: $(PROG).elf |> !OBJCOPY |> %B.hex
+: $(PROG).elf |> !OBJDUMP |> %B.lss
+: $(PROG).elf |> !SIZE |>
+