include ../../gcc.mk
BSPDIR = ../../bsp
BSPCPU = microblaze_0
COMMONDIR = ../../common
LSCRIPT = ../../lscript.ld

SOURCES = $(wildcard *.c) $(wildcard $(COMMONDIR)/*.c)
ELFFILE = convolution.elf

CFLAGS = -g -I$(BSPDIR)/bsp/$(BSPCPU)/include -I$(COMMONDIR)
LDFLAGS = -Wl,-T,$(LSCRIPT) -L$(BSPDIR)/bsp/$(BSPCPU)/lib

.PHONY: all
all: $(ELFFILE)

$(ELFFILE): $(SOURCES) $(BSPDIR)/bsp/$(BSPCPU)/lib/*.a
	$(CC) $(CFLAGS) $(LDFLAGS) $(SOURCES) -o $@

$(BSPDIR)/bsp/$(BSPCPU)/lib/%.a:
	$(MAKE) -C $(BSPDIR)

.PHONY: run
run: $(ELFFILE)
	xsct run.tcl

.PHONY: clean
clean:
	rm -f $(ELFFILE)
