diff example/get_segment/spe/Makefile @ 0:04e28d8d3c6f

first commit
author Daiki KINJYO <e085722@ie.u-ryukyu.ac.jp>
date Mon, 08 Nov 2010 01:23:25 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/example/get_segment/spe/Makefile	Mon Nov 08 01:23:25 2010 +0900
@@ -0,0 +1,49 @@
+include ../Makefile.def
+
+TARGET = ../spe-main
+
+SRCS = spe-main.o
+# SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP))
+SPEOBJS = $(SRCS:.cc=.o)
+OVLOBJS = Hello.o Hello1.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 = ld.script.orig
+LDSCRIPT_ED   = ld.script.ed
+
+OFFSET_H = runTask_offset.h
+
+all: $(TARGET) always
+
+.SUFFIXES: .cc .o
+
+$(OFFSET_H) $(LDSCRIPT_ED) always : $(OVLOBJS:.o=.cc) ovly_table.pl
+	 perl ovly_table.pl $(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) 
+	perl fixpic.pl $(<:.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) $(SPELIBS)
+
+clean:
+	rm -f $(TARGET) $(SPEOBJS) $(OVLOBJS) $(OFFSET_H) 
+	rm -f *~ \#*