3 # Host and Epiphany application destination
6 # Host source and object folder
10 # Epiphany source, library and object folder
15 # Epiphany build flags
18 CFLAGS = -Os -std=c99 -Ilib -falign-loops=8 -falign-functions=8 -Wall
19 LFLAGS = -T$(EPIPHANY_HOME)/bsps/current/fast.ldf -le-lib -lm
20 OCFLAGS = -R .shared_dram -R .data_bank3
24 HCFLAGS = -O2 -std=c99 -I$(EPIPHANY_HOME)/tools/host/include -Wall
25 HLFLAGS = -L$(EPIPHANY_HOME)/tools/host/lib -le-hal
27 # Host application and host objects
28 HOSTAPP = $(DEST)/ep_application
29 HOBJS = $(HDEST)/main.o
31 # Epiphany applications and common objects
32 EPAPPS = @@SREC_FILES@@
33 ECOMMON = $(EDEST)/dol.o $(EDEST)/ports.o $(EDEST)/index.o
35 # ===========================================================================
38 .PHONY: all run host cores clean
43 cores: $(ECOMMON) $(EPAPPS)
47 @sudo LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) \
48 EPIPHANY_HDF=$(EPIPHANY_HDF) \
53 @rm -v -f $(HOSTAPP) $(EPAPPS) $(EDEST)/* $(HDEST)/*
57 @$(ECHO) "\t(HOST) LINK\t$@"
58 @$(HOSTCC) -o $@ $^ $(HLFLAGS)
60 $(HDEST)/%.o: $(HSRC)/%.c
61 @$(ECHO) "\t(HOST) CC\t$@"
62 @$(HOSTCC) $(HCFLAGS) -c -o $@ $^
65 $(DEST)/%.srec: $(EDEST)/%.elf
66 @$(ECHO) "\t(EPIPHANY) OBJCOPY\t$@"
67 @$(OBJCOPY) $(OCFLAGS) --output-target srec --srec-forceS3 $^ $@
70 #$(EDEST)/%.elf: $(EDEST)/%.o $(ECOMMON)
71 # @$(ECHO) "\t(EPIPHANY) LINK\t$@"
72 # @$(CC) -o $@ $^ $(LFLAGS)
74 $(EDEST)/%.o: $(ESRC)/%.c
75 @$(ECHO) "\t(EPIPHANY) CC\t\t$@"
76 @$(CC) $(CFLAGS) -c -o $@ $^
78 $(EDEST)/%.o: $(ELIB)/%.c
79 @$(ECHO) "\t(EPIPHANY) CC\t\t$@"
80 @$(CC) $(CFLAGS) -c -o $@ $^