# -*- makefile -*- tests/filesys/extended_TESTS = $(addprefix \ tests/filesys/extended/,dir-empty-name dir-mk-tree dir-mkdir dir-open \ dir-over-file dir-rm-cwd dir-rm-parent dir-rm-root dir-rm-tree \ dir-rmdir dir-under-file dir-vine grow-create grow-dir-lg \ grow-file-size grow-root-lg grow-root-sm grow-seq-lg grow-seq-sm \ grow-sparse grow-tell grow-two-files syn-rw) tests/filesys/extended_PROGS = $(tests/filesys/extended_TESTS) \ tests/filesys/extended/child-syn-rw tests/filesys/extended/tar $(foreach prog,$(tests/filesys/extended_PROGS), \ $(eval $(prog)_SRC += $(prog).c tests/lib.c tests/filesys/seq-test.c)) $(foreach prog,$(tests/filesys/extended_TESTS), \ $(eval $(prog)_SRC += tests/main.c)) $(foreach prog,$(tests/filesys/extended_TESTS), \ $(eval $(prog)_PUTFILES += tests/filesys/extended/tar)) $(foreach test,$(tests/filesys/extended_TESTS), \ $(eval $(test).output: FSDISK = tmp.dsk)) tests/filesys/extended/dir-mk-tree_SRC += tests/filesys/extended/mk-tree.c tests/filesys/extended/dir-rm-tree_SRC += tests/filesys/extended/mk-tree.c tests/filesys/extended/syn-rw_PUTFILES += tests/filesys/extended/child-syn-rw GETTIMEOUT = 60 GETCMD = pintos -v -k -T $(GETTIMEOUT) GETCMD += $(PINTOSOPTS) GETCMD += $(SIMULATOR) GETCMD += --fs-disk=$(FSDISK) GETCMD += -g fs.tar -a $(TEST).tar ifeq ($(filter vm, $(KERNEL_SUBDIRS)), vm) GETCMD += --swap-disk=4 endif GETCMD += -- -q GETCMD += $(KERNELFLAGS) GETCMD += run 'tar fs.tar /' GETCMD += 2>> $(TEST).get-errors GETCMD += $(if $(VERBOSE),|tee -a,>>) $(TEST).get-output tests/filesys/extended/%.output: os.dsk rm -f tmp.dsk pintos-mkdisk tmp.dsk 2 $(TESTCMD) $(GETCMD) rm -f tmp.dsk