view TaskManager/Makefile.cell @ 321:f64d75473f95

merge 317
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 10 Jun 2009 15:23:25 +0900
parents 7efc5ede2c03
children b89ba1d96fff
line wrap: on
line source

include ./Makefile.def

TARGET    = libCellManager.a
SPETARGET = libspemanager.a

CELL_SPE_DIR  = $(IMPL_CELL_DIR)/spe

CELL_SPE_SCHEDULE_SRC = $(CELL_SPE_DIR)/SchedExit.cc       \
    $(CELL_SPE_DIR)/SchedNop2Ready.cc  \
    $(CELL_SPE_DIR)/SchedTaskList.cc \
    $(CELL_SPE_DIR)/SchedMail.cc       \
    $(CELL_SPE_DIR)/SchedTask.cc       \
    $(CELL_SPE_DIR)/Scheduler.cc\
    $(CELL_SPE_DIR)/SchedNop.cc        \
    $(CELL_SPE_DIR)/TaskGroup.cc
CELL_SPE_SCHEDULE_OBJ = $(CELL_SPE_SCHEDULE_SRC:.cc=.o)

CELL_SPE_SRCS =  \
    $(CELL_SPE_DIR)/CellDmaManager.cc   \
    $(CELL_SPE_DIR)/TaskList.cc \
    $(CELL_SPE_DIR)/CellScheduler.cc    \
    $(CELL_SPE_DIR)/TaskQueue.cc \
    $(CELL_SPE_DIR)/Task.cc            \
    $(CELL_SPE_DIR)/main.cc

# $(wildcard $(CELL_SPE_DIR)/*.cc)

CELL_SPE_OBJS = $(CELL_SPE_SRCS:.cc=.o) $(CELL_SPE_SCHEDULE_OBJ)

SPUCC = spu-g++

EXTRA_CFLAGS = -D__CERIUM_CELL__ -fno-strict-aliasing

SPE_CFLAGS = -fno-exceptions -fno-rtti

all: default

default: $(CELL_SPE_SCHEDULE_SRC)  $(TARGET) $(SPETARGET)

PPE_ALL_OBJS = $(KERN_MAIN_OBJS) $(KERN_PPE_OBJS) $(KERN_SCHED_OBJS) $(KERN_SYSTASK_OBJS) $(IMPL_CELL_OBJS)

$(TARGET): $(PPE_ALL_OBJS)
	ar crus $@ $(PPE_ALL_OBJS)

$(PPE_ALL_OBJS): %.o : %.cc
	$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(INCLUDE) -c $< -o $@

$(SPETARGET): $(CELL_SPE_OBJS)
	ar crus $@ $(CELL_SPE_OBJS)

$(CELL_SPE_SCHEDULE_SRC): kernel/schedule/*.cc
	cp kernel/schedule/*.cc $(CELL_SPE_DIR)/

$(CELL_SPE_OBJS): %.o : %.cc
	$(SPUCC) $(CFLAGS) $(SPE_CFLAGS) $(INCLUDE) -c $< -o $@

celldistclean: cellclean
	rm -f $(TARGET)
	rm -f $(SPETARGET)

cellclean:
	rm -f $(CELL_SPE_OBJS) $(CELL_SPE_SCHEDULE_SRC)
	(cd $(CELL_SPE_DIR); rm -f *~ \#*)