Makefile 12.5 KB
#!smake -k
#
# Makefile for RDP verification application test suite.
#
include $(ROOT)/usr/include/make/PRdefs

TEXDIR =	$(ROOT)/PR/apps/rdpatt/Texture

APP =		rdpverif
APP_EM =	rdpverif_em

OPTIMIZER =	-g

TARGETS =	rom rom_em

EMULATE	= 	$(ROOT)/usr/sbin/emulate

TEXHFILES =	RGBA16dana.h \
		RGBA8dana.h

HFILES =	$(TEXHFILES) rdpverif.h controller.h

CODEFILES =	rdpverif.c main.c controller.c
CODEOBJECTS =	$(CODEFILES:.c=.o)
CODEOBJECTS_EM =	rdpverif.o main_em.o

DATAFILES =	zbuffer.c init.c static.c cfb.c
DATAOBJECTS =	$(DATAFILES:.c=.o)

CODESEGMENT =	codesegment.o
CODESEGMENT_EM = codesegment_em.o

OBJECTS =	$(CODESEGMENT) $(DATAOBJECTS)
OBJECTS_EM =	$(CODESEGMENT_EM) $(DATAOBJECTS)

LCINCS =	-I. -I$(ROOT)/usr/include/PR -I $(ROOT)/usr/include
LCOPTS =	-fullwarn -non_shared -G 0

LDIRT  =	$(APP) $(APP_EM) rdpverif rdpverif_em \
		cases InData/test*Z $(TEXHFILES)

LDFLAGS_EM =	$(MKDEPOPT) -nostdlib -L$(ROOT)/usr/lib -L$(ROOT)/usr/lib/PR \
			-lem -lultra_em

LDFLAGS =	$(MKDEPOPT) -nostdlib -L$(ROOT)/usr/lib -L$(ROOT)/usr/lib/PR \
		-lultra_d

LCDEFS =

default:	$(TARGETS)

include $(COMMONRULES)

install:	default
		$(INSTALL) -m 444 -F /usr/src/PR/rdpverif Makefile spec \
			$(HFILES) $(CODEFILES) $(DATAFILES)

$(CODESEGMENT):	$(CODEOBJECTS)
		$(LD) -o $(CODESEGMENT) -r $(CODEOBJECTS) $(LDFLAGS)

$(CODESEGMENT_EM):	$(CODEOBJECTS_EM)
		$(LD) -o $(CODESEGMENT_EM) -r $(CODEOBJECTS_EM) $(LDFLAGS_EM)

$(OBJECTS): $(HFILES)

#
# Header files (textures)
#

RGBA16dana.h: $(TEXDIR)/dana_tiny.rgb
	$(RGB2C) -m RGBA16dana $(TEXDIR)/dana_tiny.rgb > RGBA16dana.h

RGBA8dana.h: $(TEXDIR)/dana_tiny.rgb
	$(RGB2C) -m RGBA8dana  -s 8 $(TEXDIR)/dana_tiny.rgb > RGBA8dana.h


#
# This must depend on the generated h-files, which in turn depend
# on the cases utility. If we don't do this, smake fails.
#
main.o: $(HFILES)
static.o: $(HFILES)

rom $(APP):	spec $(OBJECTS) $(MAKEROM)
		$(MAKEROM) -r rom spec

rom_em $(APP_EM):	spec_em $(OBJECTS_EM) $(MAKEROM)
		$(MAKEROM) -e -r rom_em spec_em

#
# Files specific to Hardware/Emulator
#

main.o: main.c
	$(CC) $(CFLAGS) $(LCDEFS) -c $< 

rdpverif.o: rdpverif.c
	$(CC) $(CFLAGS) $(LCDEFS) -c $< 

static.o: static.c
	$(CC) $(CFLAGS) $(LCDEFS) -c $< 

main_em.o: main.c
	$(CC) $(CFLAGS) $(LCDEFS) -D_EMULATOR -o $*.o -c main.c

#
# ADD TEST CASE:
#
# Note: due to fopen() restrictions in the rsp simulator, the
# directory you send the output to must exist before running...
#

NIGHTLY_REGRESSION_TEST_ARCHIVE =	\
	InData/test001.1.rdp.Z.archive  \
	InData/test002.2.rdp.Z.archive  \
	InData/test003.3.rdp.Z.archive  \
	InData/test103.3.rdp.Z.archive  \
	InData/test004.4.rdp.Z.archive  \
	InData/test005.5.rdp.Z.archive  \
	InData/test105.5.rdp.Z.archive  \
	InData/test006.6.rdp.Z.archive  \
	InData/test007.7.rdp.Z.archive  \
	InData/test107.7.rdp.Z.archive  \
	InData/test010.10.rdp.Z.archive \
	InData/test011.11.rdp.Z.archive \
	InData/test013.13.rdp.Z.archive \
	InData/test014.14.rdp.Z.archive \
	InData/test114.14.rdp.Z.archive \
	InData/test015.15.rdp.Z.archive \
	InData/test016.16.rdp.Z.archive \
	InData/test017.17.rdp.Z.archive \
	InData/test119.19.rdp.Z.archive 

OTHER_TESTS_ARCHIVE =			\
	InData/test000.0.rdp.Z.archive

#
#  Load bug in tapeout1 hardware case
#
LOAD_BUG_ARCHIVE = \
	InData/test911.811.rdram.Z.archive


NIGHTLY_REGRESSION_TESTS        = ${NIGHTLY_REGRESSION_TEST_ARCHIVE:R:R:R:R:T}
NIGHTLY_REGRESSION_TEST_TARGETS = ${NIGHTLY_REGRESSION_TEST_ARCHIVE:R}
OTHER_TESTS                     = ${OTHER_TESTS_ARCHIVE:R:R:R:R:T}
OTHER_TESTS_TARGETS             = ${OTHER_TESTS_ARCHIVE:R}
TESTS                           = ${OTHER_TESTS} ${NIGHTLY_REGRESSION_TESTS}

test000:	InData/test000.0.rdp.Z InData/test000.0.rdram.Z

InData/test000.0.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 0 -f 0 -n InData/test000" $(APP_EM) rom_em
	compress -f InData/test000*.rdp

InData/test000.0.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 0 -f 0 -n InData/test000 -m" $(APP_EM) rom_em

test001:	InData/test001.1.rdp.Z InData/test001.1.rdram.Z

InData/test001.1.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 1 -f 1 -m -n InData/test001" $(APP_EM) rom_em
	compress -f InData/test001*.rdp

InData/test001.1.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 1 -f 1 -n InData/test001 -m" $(APP_EM) rom_em

test002:	InData/test002.2.rdp.Z InData/test002.2.rdram.Z

InData/test002.2.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 2 -f 2 -m -n InData/test002" $(APP_EM) rom_em
	compress -f InData/test002*.rdp

InData/test002.2.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 2 -f 2 -n InData/test002 -m" $(APP_EM) rom_em

test003:	InData/test003.3.rdp.Z InData/test003.3.rdram.Z

InData/test003.3.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 3 -f 3 -m -n InData/test003" $(APP_EM) rom_em
	compress -f InData/test003*.rdp

InData/test003.3.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 3 -f 3 -n InData/test003 -m" $(APP_EM) rom_em

test103:	InData/test103.3.rdp.Z InData/test103.3.rdram.Z

InData/test103.3.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 3 -f 3 -m -n InData/test103 -t" $(APP_EM) rom_em
	compress -f InData/test103*.rdp

InData/test103.3.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 3 -f 3 -m -n InData/test103 -t" $(APP_EM) rom_em

test004:	InData/test004.4.rdp.Z InData/test004.4.rdram.Z

InData/test004.4.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 4 -f 4 -m -n InData/test004" $(APP_EM) rom_em
	compress -f InData/test004*.rdp

InData/test004.4.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 4 -f 4 -n InData/test004 -m" $(APP_EM) rom_em

test005:	InData/test005.5.rdp.Z InData/test005.5.rdram.Z

InData/test005.5.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 5 -f 5 -m -n InData/test005" $(APP_EM) rom_em
	compress -f InData/test005*.rdp

InData/test005.5.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 5 -f 5 -n InData/test005 -m" $(APP_EM) rom_em

test105:	InData/test105.5.rdp.Z InData/test105.5.rdram.Z

InData/test105.5.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 5 -f 5 -m -n InData/test105 -t" $(APP_EM) rom_em
	compress -f InData/test105*.rdp

InData/test105.5.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 5 -f 5 -m -n InData/test105 -t" $(APP_EM) rom_em

test006:	InData/test006.6.rdp.Z InData/test006.6.rdram.Z

InData/test006.6.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 6 -f 6 -m -n InData/test006" $(APP_EM) rom_em
	compress -f InData/test006*.rdp

InData/test006.6.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 6 -f 6 -n InData/test006 -m -F" $(APP_EM) rom_em

test007:	InData/test007.7.rdp.Z InData/test007.7.rdram.Z

InData/test007.7.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 7 -f 7 -m -n InData/test007" $(APP_EM) rom_em
	compress -f InData/test007*.rdp

InData/test007.7.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 7 -f 7 -n InData/test007 -m" $(APP_EM) rom_em

test107:	InData/test107.7.rdp.Z InData/test107.7.rdram.Z

InData/test107.7.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 7 -f 7 -m -n InData/test107 -t" $(APP_EM) rom_em
	compress -f InData/test107*.rdp

InData/test107.7.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 7 -f 7 -m -n InData/test107 -t" $(APP_EM) rom_em

test010:	InData/test010.10.rdp.Z InData/test010.10.rdram.Z

InData/test010.10.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 10 -f 10 -m -n InData/test010" $(APP_EM) rom_em
	compress -f InData/test010*.rdp

InData/test010.10.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 10 -f 10 -n InData/test010 -m" $(APP_EM) rom_em

test110:	InData/test110.10.rdp.Z InData/test110.10.rdram.Z

InData/test110.10.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 10 -f 10 -m -n InData/test110 -t" $(APP_EM) rom_em
	compress -f InData/test110*.rdp

InData/test110.10.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 10 -f 10 -m -n InData/test110 -t" $(APP_EM) rom_em

test011:	InData/test011.11.rdp.Z InData/test011.11.rdram.Z

InData/test011.11.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 11 -f 11 -m -n InData/test011" $(APP_EM) rom_em
	compress -f InData/test011*.rdp

InData/test011.11.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 11 -f 11 -n InData/test011 -m" $(APP_EM) rom_em

test013:	InData/test013.13.rdp.Z InData/test013.13.rdram.Z

InData/test013.13.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 13 -f 13 -m -n InData/test013" $(APP_EM) rom_em
	compress -f InData/test013*.rdp

InData/test013.13.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 13 -f 13 -n InData/test013 -m" $(APP_EM) rom_em

test014:	InData/test014.14.rdp.Z InData/test014.14.rdram.Z

InData/test014.14.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 14 -f 14 -m -n InData/test014" $(APP_EM) rom_em
	compress -f InData/test014*.rdp

InData/test014.14.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 14 -f 14 -n InData/test014 -m" $(APP_EM) rom_em

test114:	InData/test114.14.rdp.Z InData/test114.14.rdram.Z

InData/test114.14.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 14 -f 14 -m -n InData/test114 -t" $(APP_EM) rom_em
	compress -f InData/test114*.rdp

InData/test114.14.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 14 -f 14 -m -n InData/test114 -t" $(APP_EM) rom_em

test015:	InData/test015.15.rdp.Z InData/test015.15.rdram.Z

InData/test015.15.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 15 -f 15 -m -n InData/test015" $(APP_EM) rom_em
	compress -f InData/test015*.rdp

InData/test015.15.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 15 -f 15 -n InData/test015 -m -F" $(APP_EM) rom_em

test016:	InData/test016.16.rdp.Z InData/test016.16.rdram.Z

InData/test016.16.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 16 -f 16 -m -n InData/test016" $(APP_EM) rom_em
	compress -f InData/test016*.rdp

InData/test016.16.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 16 -f 16 -n InData/test016 -m -F" $(APP_EM) rom_em

test017:	InData/test017.17.rdp.Z InData/test017.17.rdram.Z

InData/test017.17.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 17 -f 17 -m -n InData/test017" $(APP_EM) rom_em
	compress -f InData/test017*.rdp

InData/test017.17.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 17 -f 17 -n InData/test017 -m" $(APP_EM) rom_em

#
# virtually same as 117, with copy mode stuff deleted.
#
test119:	InData/test119.19.rdp.Z InData/test119.19.rdram.Z

InData/test119.19.rdp.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-a -o 19 -f 19 -m -n InData/test119 -t" $(APP_EM) rom_em
	compress -f InData/test119*.rdp

InData/test119.19.rdram.Z:        $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 19 -f 19 -m -n InData/test119 -t" $(APP_EM) rom_em

#
# Run a smaller subset of the total test coverage on a nightly basis.
#
nightly_regression: $(NIGHTLY_REGRESSION_TESTS)

#
# Only checkin archived versions of the .rdp files on a periodic, 
# on-demand basis (e.g. whenever an RSP simulator/ucode change affects the 
# output files mumble.rdp).
#
# Otherwise we'll pollute the source tree with unnecessary copies
# of these data files.  The intent is to provide a way to resurrect data
# files for downstream simulation purposes whenever the output files generated
# by the rsp sim environment causes a hiccup downstream.
#
periodic_checkin: $(NIGHTLY_REGRESSION_TESTS)
	$(ROOT)/PR/tools/scripts/copyToArchive $(NIGHTLY_REGRESSION_TEST_TARGETS)

#
# Scott & Nathan's old, familiar ms targets...
#

mtest001: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 1 -f 1 -m -n InData/test001" $(APP_EM) rom_em

mtest002: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 2 -f 2 -m -n InData/test002" $(APP_EM) rom_em

mtest003: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 3 -f 3 -m -n InData/test003" $(APP_EM) rom_em

mtest004: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 4 -f 4 -m -n InData/test004" $(APP_EM) rom_em

mtest005: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 5 -f 5 -m -n InData/test005" $(APP_EM) rom_em

mtest006: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 6 -f 6 -m -n InData/test006" $(APP_EM) rom_em

mtest007: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 7 -f 7 -m -n InData/test007" $(APP_EM) rom_em

mtest010: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 10 -f 10 -m -n InData/test010" $(APP_EM) rom_em

mtest011: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 11 -f 11 -m -n InData/test011" $(APP_EM) rom_em

mtest012: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 12 -f 12 -m -n InData/test012" $(APP_EM) rom_em

mtest013: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 13 -f 13 -m -n InData/test013" $(APP_EM) rom_em

mtest014: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 14 -f 14 -m -n InData/test014" $(APP_EM) rom_em

mtest015: $(APP_EM)
	$(EMULATE) -n -s -a "-d -a -o 15 -f 14 -m -n InData/test015" $(APP_EM) rom_em