1dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat## -- Config -- 2dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San MehatDEV := lo 3dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San MehatPREFIX := sudo 4dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat## -- End Config -- 5dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 6dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San MehatTESTS := $(patsubst tests/%,%,$(wildcard tests/*.t)) 7dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San MehatIPVERS := $(filter-out iproute2/Makefile,$(wildcard iproute2/*)) 8dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San MehatKENV := $(shell cat /proc/config.gz | gunzip | grep ^CONFIG) 9dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 10dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat.PHONY: compile listtests alltests configure $(TESTS) 11dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 12dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehatconfigure: 13dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat echo "Entering iproute2" && cd iproute2 && $(MAKE) configure && cd ..; 14dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 15dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehatcompile: configure 16dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat echo "Entering iproute2" && cd iproute2 && $(MAKE) && cd ..; 17dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 18dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehatlisttests: 19dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat @for t in $(TESTS); do \ 20dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat echo "$$t"; \ 21dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat done 22dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 23dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehatalltests: $(TESTS) 24dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 25dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehatclean: 26dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat @rm -rf results/* 27dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 28dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehatdistclean: clean 29dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat echo "Entering iproute2" && cd iproute2 && $(MAKE) distclean && cd ..; 30dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat 31dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat$(TESTS): 32dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat @for i in $(IPVERS); do \ 33dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat o=`echo $$i | sed -e 's/iproute2\///'`; \ 34dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat echo -n "Running $@ [$$o/`uname -r`]: "; \ 35dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat TC="$$i/tc/tc" IP="$$i/ip/ip" DEV="$(DEV)" IPVER="$@" SNAME="$$i" \ 36dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat ERRF="results/$@.$$o.err" $(KENV) $(PREFIX) tests/$@ > results/$@.$$o.out; \ 37dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat if [ "$$?" = "127" ]; then \ 38dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat echo "SKIPPED"; \ 39dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat elif [ -e "results/$@.$$o.err" ]; then \ 40dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat echo "FAILED"; \ 41dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat else \ 42dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat echo "PASS"; \ 43dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat fi; \ 44dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat dmesg > results/$@.$$o.dmesg; \ 45dcfb7a77f8709125e97c313cb8ab6ec4d87468f4San Mehat done 46