##// END OF EJS Templates
fuzz: compile xdiff.cc with -std=c++17...
Yuya Nishihara -
r38235:74f89b7a default
parent child Browse files
Show More
@@ -1,59 +1,60 b''
1 1 CC = clang
2 2 CXX = clang++
3 3
4 4 all: bdiff xdiff
5 5
6 6 fuzzutil.o: fuzzutil.cc fuzzutil.h
7 7 $(CXX) $(CXXFLAGS) -g -O1 -fsanitize=fuzzer-no-link,address \
8 8 -std=c++17 \
9 9 -I../../mercurial -c -o fuzzutil.o fuzzutil.cc
10 10
11 11 fuzzutil-oss-fuzz.o: fuzzutil.cc fuzzutil.h
12 12 $(CXX) $(CXXFLAGS) -std=c++17 \
13 13 -I../../mercurial -c -o fuzzutil-oss-fuzz.o fuzzutil.cc
14 14
15 15 bdiff.o: ../../mercurial/bdiff.c
16 16 $(CC) $(CFLAGS) -fsanitize=fuzzer-no-link,address -c -o bdiff.o \
17 17 ../../mercurial/bdiff.c
18 18
19 19 bdiff: bdiff.cc bdiff.o fuzzutil.o
20 20 $(CXX) $(CXXFLAGS) -DHG_FUZZER_INCLUDE_MAIN=1 -g -O1 -fsanitize=fuzzer-no-link,address \
21 21 -std=c++17 \
22 22 -I../../mercurial bdiff.cc bdiff.o fuzzutil.o -o bdiff
23 23
24 24 bdiff-oss-fuzz.o: ../../mercurial/bdiff.c
25 25 $(CC) $(CFLAGS) -c -o bdiff-oss-fuzz.o ../../mercurial/bdiff.c
26 26
27 27 bdiff_fuzzer: bdiff.cc bdiff-oss-fuzz.o fuzzutil-oss-fuzz.o
28 28 $(CXX) $(CXXFLAGS) -std=c++17 -I../../mercurial bdiff.cc \
29 29 bdiff-oss-fuzz.o fuzzutil-oss-fuzz.o -lFuzzingEngine -o \
30 30 $$OUT/bdiff_fuzzer
31 31
32 32 x%.o: ../../mercurial/thirdparty/xdiff/x%.c ../../mercurial/thirdparty/xdiff/*.h
33 33 $(CC) -g -O1 -fsanitize=fuzzer-no-link,address -c \
34 34 -o $@ \
35 35 $<
36 36
37 xdiff: CXXFLAGS += -std=c++17
37 38 xdiff: xdiff.cc xdiffi.o xprepare.o xutils.o fuzzutil.o
38 39 $(CXX) $(CXXFLAGS) -DHG_FUZZER_INCLUDE_MAIN=1 -g -O1 -fsanitize=fuzzer-no-link,address \
39 40 -I../../mercurial xdiff.cc \
40 41 xdiffi.o xprepare.o xutils.o fuzzutil.o -o xdiff
41 42
42 43 fuzz-x%.o: ../../mercurial/thirdparty/xdiff/x%.c ../../mercurial/thirdparty/xdiff/*.h
43 44 $(CC) $(CFLAGS) -c \
44 45 -o $@ \
45 46 $<
46 47
47 48 xdiff_fuzzer: xdiff.cc fuzz-xdiffi.o fuzz-xprepare.o fuzz-xutils.o fuzzutil-oss-fuzz.o
48 49 $(CXX) $(CXXFLAGS) -std=c++17 -I../../mercurial xdiff.cc \
49 50 fuzz-xdiffi.o fuzz-xprepare.o fuzz-xutils.o fuzzutil-oss-fuzz.o \
50 51 -lFuzzingEngine -o $$OUT/xdiff_fuzzer
51 52
52 53 clean:
53 54 rm *.o *_fuzzer \
54 55 bdiff \
55 56 xdiff
56 57
57 58 oss-fuzz: bdiff_fuzzer xdiff_fuzzer
58 59
59 60 .PHONY: all clean oss-fuzz
General Comments 0
You need to be logged in to leave comments. Login now