diff options
| author | _ov4 <ov4@ov4.org> | 2026-10-23 16:52:27 +0000 |
|---|---|---|
| committer | _ov4 <ov4@ov4.org> | 2026-10-23 16:52:27 +0000 |
| commit | feab4e39d18f97bf1e3365290204a4195d15f2cd (patch) | |
| tree | 8f1d53c2b2c392e777e5af726abb32a1ee2d27a7 /shlab-handout/Makefile | |
| parent | 9cdeda34930cba606725ce1497b72e006e1b1c54 (diff) | |
| parent | 1ffed57168ffaa8bec0dfda56b4b0b8dc957b11a (diff) | |
Merge tiny-shell history into shlab-handout directory
Diffstat (limited to 'shlab-handout/Makefile')
| -rw-r--r-- | shlab-handout/Makefile | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/shlab-handout/Makefile b/shlab-handout/Makefile new file mode 100644 index 0000000..051dbaa --- /dev/null +++ b/shlab-handout/Makefile @@ -0,0 +1,103 @@ +# Makefile for the CS:APP Shell Lab + +TEAM = NOBODY +VERSION = 1 +HANDINDIR = /afs/cs/academic/class/15213-f02/L5/handin +DRIVER = ./sdriver.pl +TSH = ./tsh +TSHREF = ./tshref +TSHARGS = "-p" +CXX = g++ +CXXFLAGS = -std=c++17 -Wall -Wno-write-strings -O2 +CC = gcc +CFLAGS = -Wall -O2 +FILES = $(TSH) ./myspin ./mysplit ./mystop ./myint ./output + +all: $(FILES) + +$(TSH): tsh.cc + $(CXX) $(CXXFLAGS) -o $@ $< + +################## +# Handin your work +################## +handin: + cp tsh.cc $(HANDINDIR)/$(TEAM)-$(VERSION)-tsh.cc + + +################## +# Regression tests +################## + +# Run tests using the student's shell program +test01: + $(DRIVER) -t trace01.txt -s $(TSH) -a $(TSHARGS) +test02: + $(DRIVER) -t trace02.txt -s $(TSH) -a $(TSHARGS) +test03: + $(DRIVER) -t trace03.txt -s $(TSH) -a $(TSHARGS) +test04: + $(DRIVER) -t trace04.txt -s $(TSH) -a $(TSHARGS) +test05: + $(DRIVER) -t trace05.txt -s $(TSH) -a $(TSHARGS) +test06: + $(DRIVER) -t trace06.txt -s $(TSH) -a $(TSHARGS) +test07: + $(DRIVER) -t trace07.txt -s $(TSH) -a $(TSHARGS) +test08: + $(DRIVER) -t trace08.txt -s $(TSH) -a $(TSHARGS) +test09: + $(DRIVER) -t trace09.txt -s $(TSH) -a $(TSHARGS) +test10: + $(DRIVER) -t trace10.txt -s $(TSH) -a $(TSHARGS) +test11: + $(DRIVER) -t trace11.txt -s $(TSH) -a $(TSHARGS) +test12: + $(DRIVER) -t trace12.txt -s $(TSH) -a $(TSHARGS) +test13: + $(DRIVER) -t trace13.txt -s $(TSH) -a $(TSHARGS) +test14: + $(DRIVER) -t trace14.txt -s $(TSH) -a $(TSHARGS) +test15: + $(DRIVER) -t trace15.txt -s $(TSH) -a $(TSHARGS) +test16: + $(DRIVER) -t trace16.txt -s $(TSH) -a $(TSHARGS) + +# Run the tests using the reference shell program +rtest01: + $(DRIVER) -t trace01.txt -s $(TSHREF) -a $(TSHARGS) +rtest02: + $(DRIVER) -t trace02.txt -s $(TSHREF) -a $(TSHARGS) +rtest03: + $(DRIVER) -t trace03.txt -s $(TSHREF) -a $(TSHARGS) +rtest04: + $(DRIVER) -t trace04.txt -s $(TSHREF) -a $(TSHARGS) +rtest05: + $(DRIVER) -t trace05.txt -s $(TSHREF) -a $(TSHARGS) +rtest06: + $(DRIVER) -t trace06.txt -s $(TSHREF) -a $(TSHARGS) +rtest07: + $(DRIVER) -t trace07.txt -s $(TSHREF) -a $(TSHARGS) +rtest08: + $(DRIVER) -t trace08.txt -s $(TSHREF) -a $(TSHARGS) +rtest09: + $(DRIVER) -t trace09.txt -s $(TSHREF) -a $(TSHARGS) +rtest10: + $(DRIVER) -t trace10.txt -s $(TSHREF) -a $(TSHARGS) +rtest11: + $(DRIVER) -t trace11.txt -s $(TSHREF) -a $(TSHARGS) +rtest12: + $(DRIVER) -t trace12.txt -s $(TSHREF) -a $(TSHARGS) +rtest13: + $(DRIVER) -t trace13.txt -s $(TSHREF) -a $(TSHARGS) +rtest14: + $(DRIVER) -t trace14.txt -s $(TSHREF) -a $(TSHARGS) +rtest15: + $(DRIVER) -t trace15.txt -s $(TSHREF) -a $(TSHARGS) +rtest16: + $(DRIVER) -t trace16.txt -s $(TSHREF) -a $(TSHARGS) + + +# clean up +clean: + rm -f $(FILES) *.o *~ |
