# Host application and host objects
HOSTAPP = $(DEST)/ep_application
-HOBJS = $(HDEST)/buffers.o
+HOBJS = $(HDEST)/main.o
# Epiphany applications and common objects
-EPAPPS = $(DEST)/Data_Generator.srec $(DEST)/Weight_Generator.srec
-ECOMMON = $(EDEST)/dol.o
+EPAPPS = $(DEST)/Gen.srec $(DEST)/Square.srec #$(DEST)/Beam_Former.srec
+EWRAPPERS = $(patsubst $(DEST)%,$(EDEST)%,$(EPAPPS:.srec=_Wrapper.o))
+ECOMMON = $(EDEST)/dol.o $(EDEST)/ports.o $(EDEST)/index.o
# Epiphany build flags
CC = e-gcc
OBJCOPY = e-objcopy
-CFLAGS = -O2 -falign-loops=8 -falign-functions=8 -Wall -Ilib
+CFLAGS = -O2 -std=c99 -Ilib -falign-loops=8 -falign-functions=8 -Wall
LFLAGS = -T$(EPIPHANY_HOME)/bsps/current/fast.ldf -le-lib
OCFLAGS = -R .shared_dram -R .data_bank3
# Host build flags
HOSTCC = gcc
-HCFLAGS = -I$(EPIPHANY_HOME)/tools/host/include -std=c99 -Wall
+HCFLAGS = -O2 -std=c99 -I$(EPIPHANY_HOME)/tools/host/include -Wall
HLFLAGS = -L$(EPIPHANY_HOME)/tools/host/lib -le-hal
# Global rules
+.SECONDARY:
.PHONY: all run host cores clean
all: run
host: $(HOSTAPP)
-cores: $(EPAPPS)
+cores: $(ECOMMON) $(EWRAPPERS) $(EPAPPS)
run: host cores
@echo -e "\tRUN"
@echo -e "\t(EPIPHANY) OBJCOPY $@"
@$(OBJCOPY) $(OCFLAGS) --output-target srec --srec-forceS3 $^ $@
-$(EDEST)/%.elf: $(ECOMMON) $(EDEST)/%.o
+$(EDEST)/%.elf: $(EDEST)/%.o $(EDEST)/%_Wrapper.o $(ECOMMON)
@echo -e "\t(EPIPHANY) LINK\t$@"
@$(CC) -o $@ $^ $(LFLAGS)