include ../Makefile.def TARGET = ../spe-main SRCS = spe-main.o # SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) SPEOBJS = $(SRCS:.cc=.o) OVLOBJS = Hello.o OLEVEL = 9 CC = spu-g++ INCLUDE = -I../${CERIUM}/include/TaskManager -I. -I.. CFLAGS1 = $(INCLUDE) -O$(OLEVEL) -g -Wall -fno-exceptions -fno-rtti #-DDEBUG # CFLAGS = -DNO_OVERLAY=1 $(CFLAGS1) CFLAGS = $(CFLAGS1) LIBS = -L../${CERIUM}/TaskManager -lspemanager -Wl,--gc-sections SPELIBS = -Wl,-T,$(LDSCRIPT) -Wl,-N $(LIBS) LDSCRIPT = ld.script LDSCRIPT_ORIG = ../$(CERIUM)/lib/ld.script.orig LDSCRIPT_ED = ld.script.ed OVL_TABLE_GEN = perl ../$(CERIUM)/bin/cell_ovly_table.pl FIX_PIC = perl ../$(CERIUM)/bin/cell_fixpic.pl OFFSET_H = runTask_offset.h all: $(TARGET) .SUFFIXES: .cc .o $(OFFSET_H) $(LDSCRIPT_ED): $(OVLOBJS:.o=.cc) $(OVL_TABLE_GEN) $(TARGET) $(OVLOBJS:.o=.cc) $(SPEOBJS): %.o : %.cc $(OFFSET_H) $(CC) $(CFLAGS) -c $< -o $@ $(OVLOBJS): %.o : %.cc $(OFFSET_H) $(CC) $(CFLAGS) -c $< -S -o $(<:.cc=.s) $(FIX_PIC) $(<:.cc=.s) | $(CC) $(SPECFLAGS) -x assembler -c -o $@ - $(LDSCRIPT): $(LDSCRIPT_ED) cp $(LDSCRIPT_ORIG) $(LDSCRIPT) ed $(LDSCRIPT) < $(LDSCRIPT_ED) > /dev/null 2>&1 $(TARGET): $(SPEOBJS) $(OVLOBJS) $(LDSCRIPT) $(CC) -o $@ $(SPEOBJS) $(OVLOBJS) $(SPELIBS) clean: rm -f $(TARGET) $(SPEOBJS) $(OVLOBJS) $(OFFSET_H) rm -f *~ \#*