--- a/contrib/fuzz/Makefile Wed Dec 19 20:26:53 2018 -0500
+++ b/contrib/fuzz/Makefile Wed Dec 19 23:48:35 2018 -0500
@@ -135,12 +135,23 @@
revlog_corpus.zip:
python revlog_corpus.py $$OUT/revlog_fuzzer_seed_corpus.zip
+dirstate_fuzzer: sanpy dirstate.cc manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o
+ $(CXX) $(CXXFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \
+ -Wno-register -Wno-macro-redefined \
+ -I../../mercurial dirstate.cc \
+ manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o \
+ -lFuzzingEngine `$$OUT/sanpy/bin/python-config --ldflags` \
+ -o $$OUT/dirstate_fuzzer
+
+dirstate_corpus.zip:
+ python dirstate_corpus.py $$OUT/dirstate_fuzzer_seed_corpus.zip
+
clean:
$(RM) *.o *_fuzzer \
bdiff \
mpatch \
xdiff
-oss-fuzz: bdiff_fuzzer mpatch_fuzzer mpatch_corpus.zip xdiff_fuzzer manifest_fuzzer manifest_corpus.zip revlog_fuzzer revlog_corpus.zip
+oss-fuzz: bdiff_fuzzer mpatch_fuzzer mpatch_corpus.zip xdiff_fuzzer manifest_fuzzer manifest_corpus.zip revlog_fuzzer revlog_corpus.zip dirstate_fuzzer dirstate_corpus.zip
.PHONY: all clean oss-fuzz sanpy