Makefile.bowtie 4.79 KB
#!smake -k -J 3
#
# Force smake to only batch three rules at a time; any more on a memory
# constricted system, and the iosim jobs will run out of swap space.
#
#
#  This makefile is used for running tests for the bow-tie fix.
#
#
COMMONPREF=RDPSIM
PRDEPTH = ../../..

ATTDEPTH = $(PRDEPTH)/apps/rdpatt/InData
COVDEPTH = $(PRDEPTH)/apps/rdpcov/InData
EWDEPTH = $(PRDEPTH)/apps/rdpew/InData
TEXDEPTH = $(PRDEPTH)/apps/rdptex/InData
MSDEPTH = $(PRDEPTH)/apps/rdpms/InData

include $(PRDEPTH)/PRdefs
include $(ROOT)/usr/include/make/ismcommondefs

DUMPDIR = "./"
#
#  User should set this
#
# SIMVDIR = "$(ROOT)/PR/hw2/chip/sim"
#
# 21600 = 6 hours
#
TIMELIMIT = 21600

#
#  Tools
#
HW		= $(PRDEPTH)/hw/chip/rcp
HWLIB		= $(PRDEPTH)/hw/chip/lib/verilog
TOOLS		= $(PRDEPTH)/rdpsim/tools
FILTER		= $(ROOT)/PR/rdpsim/backend/filter
RDRAM2RDP	= $(TOOLS)/rdram2rdp
#
#  User should set SIMVDIR 
#
TESTIT		= RDP_OPTS="$(RDP_OPTS)" ./testit -a
#
# Set RDP_OPTS on the command line to make if you want to provide a temporary
# override for the simulators, or put it in your environment as a shell 
# variable.  For example, both of the following achieve the same desired
# result (getting the simulation to terminate in a hundred clocks):
#
# make OutData/test014_att_cf_0.rgb "RDP_OPTS= -c 100"
#
# or
#
# setenv RDP_OPTS = "-c 100"; make OutData/test014_att_cf_0.rgb
#
RDP_C		= LD_LIBRARY_PATH=$(PRDEPTH)/lib/libimage rdp_c $(RDP_OPTS)

RDP_CV		= LD_LIBRARY_PATH=$(VCSDIR)/lib:$(PRDEPTH)/lib/libimage \
			rdp_cv $(RDP_OPTS)

#
#  Directories
#
SIMLIB		= $(PRDEPTH)/rdpsim/simlib
SRC    		= $(PRDEPTH)/rdpsim/src
HDR    		= $(PRDEPTH)/rdpsim/hdr
INCLUDE		= $(PRDEPTH)/include
WIR    		= Wir
TMEM   		= TmemData
INDATA 		= InData
OUTDATA		= OutData
SUBDIRS		= Wir InData OutData
APP_RDPTEX	= $(PRDEPTH)/apps/rdptex/InData
APP_RDPATT	= $(PRDEPTH)/apps/rdpatt/InData

#
#  Check for objects in this directory
#
VPATH		= $(SRC)

#
#  C Sources
#

#
#  Object Files
#

#
#  Header file Directories
#

#
#  Linker Directories and Options
# 

#
#  VCS options
#

TARGETS		=  testit touch_tests
LDIRT   	=  $(BOWTIE_RDP_IO)  $(BOWTIE_RDP_GATE)

default exports: $(TARGETS)

install : default
	$(INSTALL) -m 555 -F /usr/sbin $(INST_TARGETS)

$(COMMONTARGS): $(COMMONPREF)$$@
	$(SUBDIRS_MAKERULE)

#
#  SGI Common Rules
#

include $(PRDEPTH)/PRrules

#
#  Make testit script executable
#
testit: $(_FORCE)
	chmod 555 testit

################################################################################
#
#  Test Cases for Bow Tie Regression
#
#
################################################################################

BOWTIE_REGRESSION_TESTS = \
	OutData/test_io_200 \
	OutData/test_io_201 \
	OutData/test_io_202 \
	OutData/test_io_203 \
	OutData/test_io_204 \
	OutData/test_io_205 \
		\
	OutData/test_io_500 \
	OutData/test_io_501 \
	OutData/test_io_502 \
	OutData/test_io_503 \
	OutData/test_io_504 \
	OutData/test_io_505 \
	OutData/test_io_506 \
	OutData/test_io_507 \
	OutData/test_io_508 \
	OutData/test_io_509 \
	OutData/test_io_510 \
	OutData/test_io_511 \
	OutData/test_io_512 \
	OutData/test_io_513 \
		\
	OutData/test_io_600 \
	OutData/test_io_601 \
	OutData/test_io_602 \
	OutData/test_io_603 \
	OutData/test_io_604 \
	OutData/test_io_605 \
	OutData/test_io_606 \
	OutData/test_io_607 \
	OutData/test_io_608 \
	OutData/test_io_609 \
	OutData/test_io_610 \
	OutData/test_io_611 \
	OutData/test_io_612 \
	OutData/test_io_613 \
		\
	OutData/test_io_700 \
	OutData/test_io_701 \
	OutData/test_io_702 \
	OutData/test_io_703 \
	OutData/test_io_704 \
	OutData/test_io_705 \
	OutData/test_io_706 \
	OutData/test_io_707 \
	OutData/test_io_708 \
	OutData/test_io_709 \
	OutData/test_io_710 \
	OutData/test_io_711 \
	OutData/test_io_712 \
	OutData/test_io_713


BOWTIE_RDP_IO    = ${BOWTIE_REGRESSION_TESTS}
BOWTIE_RDP_GATE  = ${BOWTIE_REGRESSION_TESTS:S/_io_/_gate_/g}



################################################################################
#
# Only checkin archive versions of the simulator output files on a periodic, 
# on-demand basis (e.g. whenever an RSP simulator/ucode or RDP simulator change
# affects the output files mumble.rgb or mumble.cvg).
#
# Otherwise we'll pollute the source tree with unnecessary copies
# of these data files.  The intent is to give us a gold file to compare with.
#
################################################################################

touch_tests: $(_FORCE)
	touch $(BOWTIE_RDP_IO)
	touch $(BOWTIE_RDP_GATE)
		
bowtie_rdp_io:  $(BOWTIE_RDP_IO)

bowtie_rdp_gate:  $(BOWTIE_RDP_GATE)

################################################################################
#
#                      T e s t    T a r g e t s 
#
################################################################################

OutData/test_io_*::
	$(TESTIT) -n $(@:T:S/test//:S/_io_//) -t ew -s io

OutData/test_gate_*::
	$(TESTIT) -n $(@:T:S/test//:S/_gate_//) -t ew -s gate