Files

140 lines
5.3 KiB
Makefile

CFLAGS = -Wall -fpic -coverage -lm -std=c99 -ftest-coverage -fprofile-arcs
rngs.o: rngs.h rngs.c
gcc -c rngs.c -g $(CFLAGS)
dominion.o: dominion.h dominion.c rngs.o
gcc -c dominion.c -g $(CFLAGS)
playdom: dominion.o playdom.c
gcc -o playdom playdom.c -g dominion.o rngs.o $(CFLAGS)
testDrawCard: testDrawCard.c dominion.o rngs.o
gcc -o testDrawCard -g testDrawCard.c dominion.o rngs.o $(CFLAGS)
badTestDrawCard: badTestDrawCard.c dominion.o rngs.o
gcc -o badTestDrawCard -g badTestDrawCard.c dominion.o rngs.o $(CFLAGS)
testBuyCard: testDrawCard.c dominion.o rngs.o
gcc -o testDrawCard -g testDrawCard.c dominion.o rngs.o $(CFLAGS)
testAll: dominion.o testSuite.c
gcc -o testSuite testSuite.c -g dominion.o rngs.o $(CFLAGS)
interface.o: interface.h interface.c
gcc -c interface.c -g $(CFLAGS)
runtests: testDrawCard
./testDrawCard &> unittestresult.out
gcov dominion.c >> unittestresult.out
cat dominion.c.gcov >> unittestresult.out
player: player.c interface.o
gcc -o player player.c -g dominion.o rngs.o interface.o $(CFLAGS)
all: playdom player testDrawCard testBuyCard badTestDrawCard
unittestresults.out:
echo "Compiling and running all tests....." > unittestresults.out
gcc -o unittest1 unittest1.c dominion.c rngs.c -g $(CFLAGS)
echo "Running Unittest1...." >> unittestresults.out
./unittest1 >> unittestresults.out
gcov dominion.c >> unittestresults.out
cat dominion.c.gcov >> unittestresults.out
cat dominion.c.gcov >> unittest1.gcov
echo "######################################" >> unittestresults.out
echo "######################################" >> unittestresults.out
gcc -o unittest2 unittest2.c dominion.c rngs.c -g $(CFLAGS)
echo "Running Unittest2...." >> unittestresults.out
./unittest2 >> unittestresults.out
gcov dominion.c >> unittestresults.out
cat dominion.c.gcov >> unittestresults.out
cat dominion.c.gcov >> unittest2.gcov
echo "######################################" >> unittestresults.out
echo "######################################" >> unittestresults.out
gcc -o unittest3 unittest3.c dominion.c rngs.c -g $(CFLAGS)
echo "Running Unittest3...." >> unittestresults.out
./unittest3 >> unittestresults.out
gcov dominion.c >> unittestresults.out
cat dominion.c.gcov >> unittestresults.out
cat dominion.c.gcov >> unittest3.gcov
echo "######################################" >> unittestresults.out
echo "######################################" >> unittestresults.out
gcc -o unittest4 unittest4.c dominion.c rngs.c -g $(CFLAGS)
echo "Running Unittest4...." >> unittestresults.out
./unittest4 >> unittestresults.out
gcov dominion.c >> unittestresults.out
cat dominion.c.gcov >> unittestresults.out
cat dominion.c.gcov >> unittest4.gcov
echo "######################################" >> unittestresults.out
echo "######################################" >> unittestresults.out
gcc -o cardtest1 cardtest1.c dominion.c rngs.c -g $(CFLAGS)
echo "Running Cardtest1...." >> unittestresults.out
./cardtest1 >> unittestresults.out
gcov dominion.c >> unittestresults.out
cat dominion.c.gcov >> unittestresults.out
cat dominion.c.gcov >> cardtest1.gcov
echo "######################################" >> unittestresults.out
echo "######################################" >> unittestresults.out
gcc -o cardtest2 cardtest2.c dominion.c rngs.c -g $(CFLAGS)
echo "Running Cardtest2...." >> unittestresults.out
./cardtest2 >> unittestresults.out
gcov dominion.c >> unittestresults.out
cat dominion.c.gcov >> unittestresults.out
cat dominion.c.gcov >> cardtest2.gcov
echo "######################################" >> unittestresults.out
echo "######################################" >> unittestresults.out
gcc -o cardtest3 cardtest3.c dominion.c rngs.c -g $(CFLAGS)
echo "Running Cardtest3...." >> unittestresults.out
./cardtest3 >> unittestresults.out
gcov dominion.c >> unittestresults.out
cat dominion.c.gcov >> unittestresults.out
cat dominion.c.gcov >> cardtest3.gcov
echo "######################################" >> unittestresults.out
echo "######################################" >> unittestresults.out
gcc -o cardtest4 cardtest4.c dominion.c rngs.c -g $(CFLAGS)
echo "Running Cardtest4...." >> unittestresults.out
./cardtest4 >> unittestresults.out
gcov dominion.c >> unittestresults.out
cat dominion.c.gcov >> unittestresults.out
cat dominion.c.gcov >> cardtest4.gcov
randomtests:
gcc -o randomtestadventurer randomtestadventurer.c dominion.c rngs.c -g $(CFLAGS)
./randomtestadventurer 29378 > randomtestadventurer.out
gcov dominion.c >> randomtestadventurer.out
cat dominion.c.gcov >> randomtestadventurer.out
gcc -o randomtestcard1 randomtestcard1.c dominion.c rngs.c -g $(CFLAGS)
./randomtestcard1 29378 > randomtestcard1.out
gcov dominion.c >> randomtestcard1.out
cat dominion.c.gcov >> randomtestcard1.out
gcc -o randomtestcard2 randomtestcard2.c dominion.c rngs.c -g $(CFLAGS)
./randomtestcard2 29378 > randomtestcard2.out
gcov dominion.c >> randomtestcard2.out
cat dominion.c.gcov >> randomtestcard2.out
buggytests:
gcc -o cardtest2 cardtest2.c dominion.c rngs.c -g $(CFLAGS)
clean:
rm -f *.o playdom.exe playdom test.exe test player player.exe testInit testInit.exe *.gcov *.gcda *.gcno *.so *.out
rm -f randomtestadventurer randomtestcard1 randomtestcard2