# 
# $Id: Makefile 119 2009-05-25 17:40:26Z rosiere $
# 
# [ Description ]
# 
# Makefile
# 

# common definition
SPECINT2000_PATH		= /users/cao/kane/Project/SPEC_CPU2000/benchspec/CINT2000
SPECINT2000_PATHS		= 	$(SPECINT2000_PATH)/164.gzip  \
					$(SPECINT2000_PATH)/175.vpr   \
					$(SPECINT2000_PATH)/176.gcc   \
					$(SPECINT2000_PATH)/181.mcf   \
					$(SPECINT2000_PATH)/255.vortex\
					$(SPECINT2000_PATH)/256.bzip2 \
					$(SPECINT2000_PATH)/300.twolf 

#					$(SPECINT2000_PATH)/164.gzip
#					$(SPECINT2000_PATH)/175.vpr
#					$(SPECINT2000_PATH)/176.gcc
#					$(SPECINT2000_PATH)/181.mcf
#					$(SPECINT2000_PATH)/186.crafty
#					$(SPECINT2000_PATH)/197.parser
#					$(SPECINT2000_PATH)/252.eon
#					$(SPECINT2000_PATH)/253.perlbmk
#					$(SPECINT2000_PATH)/254.gap
#					$(SPECINT2000_PATH)/255.vortex
#					$(SPECINT2000_PATH)/256.bzip2
#					$(SPECINT2000_PATH)/300.twolf

SPECINT2000_PATH_INC		= $(addprefix -I, $(addsuffix /src, $(SPECINT2000_PATHS)))
SPECINT2000_PATH_SRC		= $(wildcard $(addsuffix /src    , $(SPECINT2000_PATHS)))
SPECINT2000_OBJECTS    		= 	$(addprefix $(DIR_OBJ)/164.gzip_,   $(addsuffix .o, $(basename $(notdir $(wildcard $(SPECINT2000_PATH)/164.gzip/src/*.c)))))\

#					$(addprefix $(DIR_OBJ)/175.vpr_,    $(addsuffix .o, $(basename $(notdir $(wildcard $(SPECINT2000_PATH)/175.vpr/src/*.c)))))\
#					$(addprefix $(DIR_OBJ)/181.mcf_,    $(addsuffix .o, $(basename $(notdir $(wildcard $(SPECINT2000_PATH)/181.mcf/src/*.c))))) \
#					$(addprefix $(DIR_OBJ)/256.bzip2_,  $(addsuffix .o, $(basename $(notdir $(wildcard $(SPECINT2000_PATH)/256.bzip2/src/*.c))))) \
#					$(addprefix $(DIR_OBJ)/176.gcc_,    $(addsuffix .o, $(basename $(notdir $(wildcard $(SPECINT2000_PATH)/176.gcc/src/*.c)))))
#					$(addprefix $(DIR_OBJ)/255.vortex_, $(addsuffix .o, $(basename $(notdir $(wildcard $(SPECINT2000_PATH)/255.vortex/src/*.c))))) \
#					$(addprefix $(DIR_OBJ)/300.twolf_,  $(addsuffix .o, $(basename $(notdir $(wildcard $(SPECINT2000_PATH)/300.twolf/src/*.c)))))	

DIR_SOFT			= ..

DIR_SRC				= ./src
DIR_C				= $(DIR_SRC)/c
DIR_ASM				= $(DIR_SRC)/asm
DIR_SYS				= $(DIR_SRC)/sys
DIR_INC		       		= $(DIR_SRC)/include
DIR_LDSCRIPT			= $(NEWLIB)/lib/

INCDIR 				= $(NEWLIB_INCDIR) -I$(DIR_INC) $(SPECINT2000_PATH_INC)
LIBDIR				= $(NEWLIB_LIBDIR)
LIBNAME				= $(NEWLIB_LIBNAME)

FLAGS				= -DSPECINT2000_PATH=\"$(SPECINT2000_PATH)\"
FLAGS_164.gzip			=
FLAGS_175.vpr			= -DSPEC_CPU2000
FLAGS_176.gcc			=
FLAGS_181.mcf			= -DWANT_STDC_PROTO
FLAGS_186.crafty		=
FLAGS_197.parser		=
FLAGS_252.eon			=
FLAGS_253.perlbmk		=
FLAGS_254.gap			=
FLAGS_255.vortex		=
FLAGS_256.bzip2			= -DWANT_STDC_PROTO
FLAGS_300.twolf			= -DSPEC_CPU2000

#-----[ Files ]-------------------------------------------------------------------
OBJECTS				= 	$(NEWLIB)/lib/*.o \
					$(patsubst $(DIR_ASM)/%.s,$(DIR_OBJ)/%.o,$(wildcard $(DIR_ASM)/*.s))	\
					$(patsubst $(DIR_SYS)/%.s,$(DIR_OBJ)/%.o,$(wildcard $(DIR_SYS)/*.s))	\
					$(patsubst $(DIR_C)/%.c,$(DIR_OBJ)/%.o,$(wildcard $(DIR_C)/*.c))	\
					$(SPECINT2000_OBJECTS)

vpath	%.h	$(SPECINT2000_PATH_INC)
# vpath	%.c	$(SPECINT2000_PATH_SRC)

include				$(DIR_SOFT)/Makefile.Software

$(DIR_OBJ)/164.gzip_%.o		: $(SPECINT2000_PATH)/164.gzip/src/%.c
				@\
                                $(ECHO) "Compilation        : $*.c";		\
				$(OR32_CC) $(OR32_CC_OPT) $(FLAGS_164.gzip)    -o $@   -c $^ ;

$(DIR_OBJ)/175.vpr_%.o		: $(SPECINT2000_PATH)/175.vpr/src/%.c
				@\
                                $(ECHO) "Compilation        : $*.c";		\
				$(OR32_CC) $(OR32_CC_OPT) $(FLAGS_175.vpr)     -o $@   -c $^ ;

$(DIR_OBJ)/176.gcc_%.o		: $(SPECINT2000_PATH)/176.gcc/src/%.c
				@\
                                $(ECHO) "Compilation        : $*.c";		\
				$(OR32_CC) $(OR32_CC_OPT) $(FLAGS_176.gcc)     -o $@   -c $^ ;

$(DIR_OBJ)/181.mcf_%.o		: $(SPECINT2000_PATH)/181.mcf/src/%.c
				@\
                                $(ECHO) "Compilation        : $*.c";		\
				$(OR32_CC) $(OR32_CC_OPT) $(FLAGS_181.mcf)     -o $@   -c $^ ;

$(DIR_OBJ)/255.vortex_%.o	: $(SPECINT2000_PATH)/255.vortex/src/%.c
				@\
                                $(ECHO) "Compilation        : $*.c";		\
				$(OR32_CC) $(OR32_CC_OPT) $(FLAGS_255.vortex)  -o $@   -c $^ ;

$(DIR_OBJ)/256.bzip2_%.o	: $(SPECINT2000_PATH)/256.bzip2/src/%.c
				@\
                                $(ECHO) "Compilation        : $*.c";		\
				$(OR32_CC) $(OR32_CC_OPT) $(FLAGS_256.bzip2)   -o $@   -c $^ ;

$(DIR_OBJ)/300.twolf_%.o	: $(SPECINT2000_PATH)/300.twolf/src/%.c
				@\
                                $(ECHO) "Compilation        : $*.c";		\
				$(OR32_CC) $(OR32_CC_OPT) $(FLAGS_300.twolf)   -o $@   -c $^ ;
