Mercurial > hg
diff contrib/fuzz/Makefile @ 38246:46dcb9f14900
fuzz: new fuzzer for the mpatch code
Differential Revision: https://phab.mercurial-scm.org/D3695
author | Augie Fackler <augie@google.com> |
---|---|
date | Sat, 28 Apr 2018 22:35:14 -0400 |
parents | 9db30f438ddd |
children | 8c692a6b5ad1 |
line wrap: on
line diff
--- a/contrib/fuzz/Makefile Thu Jun 07 21:09:16 2018 +0200 +++ b/contrib/fuzz/Makefile Sat Apr 28 22:35:14 2018 -0400 @@ -1,7 +1,7 @@ CC = clang CXX = clang++ -all: bdiff xdiff +all: bdiff mpatch xdiff fuzzutil.o: fuzzutil.cc fuzzutil.h $(CXX) $(CXXFLAGS) -g -O1 -fsanitize=fuzzer-no-link,address \ @@ -29,6 +29,26 @@ bdiff-oss-fuzz.o fuzzutil-oss-fuzz.o -lFuzzingEngine -o \ $$OUT/bdiff_fuzzer +mpatch.o: ../../mercurial/mpatch.c + $(CC) -g -O1 -fsanitize=fuzzer-no-link,address -c -o mpatch.o \ + ../../mercurial/mpatch.c + +mpatch: CXXFLAGS += -std=c++17 +mpatch: mpatch.cc mpatch.o fuzzutil.o + $(CXX) $(CXXFLAGS) -DHG_FUZZER_INCLUDE_MAIN=1 -g -O1 -fsanitize=fuzzer-no-link,address \ + -I../../mercurial mpatch.cc mpatch.o fuzzutil.o -o mpatch + +mpatch-oss-fuzz.o: ../../mercurial/mpatch.c + $(CC) $(CFLAGS) -c -o mpatch-oss-fuzz.o ../../mercurial/mpatch.c + +mpatch_fuzzer: mpatch.cc mpatch-oss-fuzz.o fuzzutil-oss-fuzz.o + $(CXX) $(CXXFLAGS) -std=c++17 -I../../mercurial mpatch.cc \ + mpatch-oss-fuzz.o fuzzutil-oss-fuzz.o -lFuzzingEngine -o \ + $$OUT/mpatch_fuzzer + +mpatch_corpus.zip: + python mpatch_corpus.py $$OUT/mpatch_fuzzer_seed_corpus.zip + x%.o: ../../mercurial/thirdparty/xdiff/x%.c ../../mercurial/thirdparty/xdiff/*.h $(CC) -g -O1 -fsanitize=fuzzer-no-link,address -c \ -o $@ \ @@ -53,8 +73,9 @@ clean: $(RM) *.o *_fuzzer \ bdiff \ + mpatch \ xdiff -oss-fuzz: bdiff_fuzzer xdiff_fuzzer +oss-fuzz: bdiff_fuzzer mpatch_fuzzer mpatch_corpus.zip xdiff_fuzzer .PHONY: all clean oss-fuzz