X-Git-Url: https://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Ftdb%2Ftools%2FMakefile;h=d7611a2b0fd08a709eb86a56af2b52e7cb7646ca;hp=49e13732cf950f5bdd49c9d77f1398aa4f021371;hb=c4c5fed020ba44b9930119672a36a1cb33aff090;hpb=41391dd9a73e1aa8bb8193cf6335542c703f20e9 diff --git a/ccan/tdb/tools/Makefile b/ccan/tdb/tools/Makefile index 49e13732..d7611a2b 100644 --- a/ccan/tdb/tools/Makefile +++ b/ccan/tdb/tools/Makefile @@ -1,14 +1,33 @@ -LDLIBS:=-lccan +LDLIBS:=../../tdb.o ../../tally.o CFLAGS:=-I../../.. -Wall -O3 #-g -pg LDFLAGS:=-L../../.. -default: replay_trace tdbtorture tdbdump +default: replay_trace tdbtorture tdbdump tdbtool starvation mktdb -replay_trace: replay_trace.c keywords.c - $(LINK.c) $< $(LOADLIBES) $(LDLIBS) -o $@ +benchmark: replay_trace + @trap "rm -f /tmp/trace.$$$$" 0; for f in benchmarks/*.rz; do if runzip -k $$f -o /tmp/trace.$$$$ && echo -n "$$f": && ./replay_trace --quiet -n 5 replay.tdb /tmp/trace.$$$$ && rm /tmp/trace.$$$$; then rm -f /tmp/trace.$$$$; else exit 1; fi; done + +REPLAY_LIBS=$(LDLIBS) ../../str_talloc.o ../../grab_file.o ../../talloc.o ../../noerr.o +replay_trace: replay_trace.c keywords.c $(REPLAY_LIBS) + $(LINK.c) $< $(LOADLIBES) $(REPLAY_LIBS) -o $@ keywords.c: keywords.gperf gperf $< > $@ +check: replay_trace + @rm -f *.reduced_trace + @set -e; for f in tests/*.trace.tar.bz2; do \ + tar xvfj $$f; \ + ./replay_trace replay.tdb *.reduced_trace; \ + rm -f *.reduced_trace; \ + done + +# Usage: make mytest.trace.tar.bz2 TRACEFILES=*.trace +%.trace.tar.bz2: $(patsubst %.trace,%.reduced_trace,$(wildcard $(TRACEFILES))) + tar cvfj $@ $^ + +%.reduced_trace: %.trace + @sed 's/\(^[0-9]* traverse\) .*/\1fn/' < $^ > $@ + clean: - rm -f replay_trace tdbtorture tdbdump *.o + rm -f replay_trace tdbtorture tdbdump tdbtool *.o