view example/get_segment/spe/Makefile @ 443:50ef76a39944

overlay worked... in -O0 only.
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Fri, 25 Sep 2009 04:53:02 +0900
parents 95a856a2d552
children 01e929f10b96
line wrap: on
line source

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  

CC      = spu-g++
INCLUDE = -I../${CERIUM}/include/TaskManager -I. -I..
CFLAGS  = $(INCLUDE) -O0 -g -Wall -fno-exceptions -fno-rtti#-DDEBUG
# CFLAGS  = -DNO_OVERLAY=1 $(CFLAGS)
 
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 = createTask_offset.h

all: $(TARGET)

.SUFFIXES: .cc .o

$(OFFSET_H) :
	 perl ovly_table.pl $(TARGET) > $(OFFSET_H)

$(SPEOBJS): %.o : %.cc $(OFFSET_H)
	$(CC) $(CFLAGS) -c $< -o $@

$(OVLOBJS): %.o : %.cc
	$(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)
	rm -f *~ \#*