#
# Make all benchmarks
#
all:		MandToPi Sieve MMUTest Matrix

#
# Project cleanup
#
clean:
	Delete *.o *.lnk MandToPi???.??? Sieve.??? MMUTest Matrix???.*

#
# Benchmark categories
#
MandToPi:	MandToPi.INT.000 MandToPi.INT.020  MandToPi.FPU.020 MandToPi.FPU.040 MandToPi.PPC
Sieve:		Sieve.68k Sieve.PPC
Matrix:		MatrixINT MatrixFLT MatrixDBL
MatrixINT:	MatrixINT.000 MatrixINT.020 MatrixINT.PPC
MatrixFLT:	MatrixFLT.000 MatrixFLT.020 MatrixFLT.020FPU MatrixFLT.PPC
MatrixDBL:	MatrixDBL.000 MatrixDBL.020 MatrixDBL.020FPU MatrixDBL.PPC
MMUTest:	MMUTest.68k MMUTest.PPC	

#
# MandToPi
#
MandToPi.INT.000: MandToPi.c
	sc MandToPi.c TO $@ LINK CPU=68000 MATH=STANDARD DEF MAXPASSES=6

MandToPi.INT.020: MandToPi.c
	sc MandToPi.c TO $@ LINK CPU=68020 MATH=STANDARD DEF MAXPASSES=6

MandToPi.FPU.020: MandToPi.c
	sc MandToPi.c TO $@ LINK CPU=68020 MATH=68881

MandToPi.FPU.040: MandToPi.c
	sc MandToPi.c TO $@ LINK CPU=68040 MATH=68881

MandToPi.PPC: MandToPi.c
	scppc MandToPi.c TO $@ LINK HUNKOBJ NOSMALLCODE NOSMALLDATA


#
# Sieve
#
Sieve.68k: Sieve.c
	sc Sieve.c TO $@ LINK CPU=68000 MATH=STANDARD

Sieve.PPC: Sieve.c
	scppc Sieve.c TO $@ LINK HUNKOBJ NOSMALLCODE NOSMALLDATA


#
# MMUTest
#
MMUTest.68k: MMUTest.c
	SC MMUTest.c TO $@ LINK CPU=68020 MATH=STANDARD
MMUTest.PPC: MMUTest.c
	SCPPC MMUTest.c TO $@ LINK HUNKOBJ NOSMALLCODE NOSMALLDATA

#
# Matrix
#
MatrixINT.000: Matrix.c
    sc Matrix.c TO $@ LINK CPU=68000 MATH=STANDARD DEF TIPO_VAR=int

MatrixINT.020: Matrix.c
    sc Matrix.c TO $@ LINK CPU=68020 MATH=STANDARD DEF TIPO_VAR=int

MatrixINT.PPC: Matrix.c
    scppc Matrix.c TO $@ LINK HUNKOBJ NOSMALLCODE NOSMALLDATA DEF TIPO_VAR=int


MatrixFLT.000: Matrix.c
    sc Matrix.c TO $@ LINK CPU=68000 MATH=STANDARD DEF TIPO_VAR=float

MatrixFLT.020: Matrix.c
    sc Matrix.c TO $@ LINK CPU=68020 MATH=STANDARD DEF TIPO_VAR=float

MatrixFLT.020FPU: Matrix.c
    sc Matrix.c TO $@ LINK CPU=68020 MATH=68881 DEF TIPO_VAR=float

MatrixFLT.PPC: Matrix.c
    scppc Matrix.c TO $@ LINK HUNKOBJ NOSMALLCODE NOSMALLDATA DEF TIPO_VAR=float


MatrixDBL.000: Matrix.c
    sc Matrix.c TO $@ LINK CPU=68000 MATH=STANDARD

MatrixDBL.020: Matrix.c
    sc Matrix.c TO $@ LINK CPU=68020 MATH=STANDARD

MatrixDBL.020FPU: Matrix.c
    sc Matrix.c TO $@ LINK CPU=68020 MATH=68881

MatrixDBL.PPC: Matrix.c
    scppc Matrix.c TO $@ LINK HUNKOBJ NOSMALLCODE NOSMALLDATA



