Mercurial > hg
annotate contrib/fuzz/Makefile @ 43811:d1587fadff06
fuzz: suppress deprecated-register warnings in our compile
These come from the Python.h headers still using the `register`
keyword and our use of C++17. I think this will go away when we're
using Python 3 for our fuzzing, but that can come later.
Differential Revision: https://phab.mercurial-scm.org/D7562
author | Augie Fackler <augie@google.com> |
---|---|
date | Fri, 06 Dec 2019 15:13:25 -0500 |
parents | 53f582bee3d1 |
children | bf0453866c80 |
rev | line source |
---|---|
38230
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
1 CC = clang |
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
2 CXX = clang++ |
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
3 |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
4 LIB_FUZZING_ENGINE ?= -lFuzzingEngine |
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
5 |
43811
d1587fadff06
fuzz: suppress deprecated-register warnings in our compile
Augie Fackler <augie@google.com>
parents:
43810
diff
changeset
|
6 CXXFLAGS += -Wno-deprecated-register |
d1587fadff06
fuzz: suppress deprecated-register warnings in our compile
Augie Fackler <augie@google.com>
parents:
43810
diff
changeset
|
7 |
38246
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
8 all: bdiff mpatch xdiff |
38231
4dd3b6c68f96
fuzz: fix the default make target
Yuya Nishihara <yuya@tcha.org>
parents:
38230
diff
changeset
|
9 |
41013
ef103c96ed33
fuzz: extract Python initialization to utility package
Augie Fackler <augie@google.com>
parents:
41012
diff
changeset
|
10 pyutil.o: pyutil.cc pyutil.h |
ef103c96ed33
fuzz: extract Python initialization to utility package
Augie Fackler <augie@google.com>
parents:
41012
diff
changeset
|
11 $(CXX) $(CXXFLAGS) -g -O1 \ |
ef103c96ed33
fuzz: extract Python initialization to utility package
Augie Fackler <augie@google.com>
parents:
41012
diff
changeset
|
12 `$$OUT/sanpy/bin/python-config --cflags` \ |
ef103c96ed33
fuzz: extract Python initialization to utility package
Augie Fackler <augie@google.com>
parents:
41012
diff
changeset
|
13 -I../../mercurial -c -o pyutil.o pyutil.cc |
ef103c96ed33
fuzz: extract Python initialization to utility package
Augie Fackler <augie@google.com>
parents:
41012
diff
changeset
|
14 |
35670
2b9e2415f5b5
contrib: add some basic scaffolding for some fuzz test targets
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
15 bdiff.o: ../../mercurial/bdiff.c |
38230
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
16 $(CC) $(CFLAGS) -fsanitize=fuzzer-no-link,address -c -o bdiff.o \ |
35670
2b9e2415f5b5
contrib: add some basic scaffolding for some fuzz test targets
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
17 ../../mercurial/bdiff.c |
2b9e2415f5b5
contrib: add some basic scaffolding for some fuzz test targets
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
18 |
43615
6f5c352f41b6
fuzz: clean out most of fuzzutil
Augie Fackler <augie@google.com>
parents:
43153
diff
changeset
|
19 bdiff: bdiff.cc bdiff.o |
38230
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
20 $(CXX) $(CXXFLAGS) -DHG_FUZZER_INCLUDE_MAIN=1 -g -O1 -fsanitize=fuzzer-no-link,address \ |
38173
fa0ddd5e8fff
fuzz: extract some common utilities and use modern C++ idioms
Augie Fackler <augie@google.com>
parents:
36765
diff
changeset
|
21 -std=c++17 \ |
43615
6f5c352f41b6
fuzz: clean out most of fuzzutil
Augie Fackler <augie@google.com>
parents:
43153
diff
changeset
|
22 -I../../mercurial bdiff.cc bdiff.o -o bdiff |
35670
2b9e2415f5b5
contrib: add some basic scaffolding for some fuzz test targets
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
23 |
2b9e2415f5b5
contrib: add some basic scaffolding for some fuzz test targets
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
24 bdiff-oss-fuzz.o: ../../mercurial/bdiff.c |
38230
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
25 $(CC) $(CFLAGS) -c -o bdiff-oss-fuzz.o ../../mercurial/bdiff.c |
35670
2b9e2415f5b5
contrib: add some basic scaffolding for some fuzz test targets
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
26 |
43615
6f5c352f41b6
fuzz: clean out most of fuzzutil
Augie Fackler <augie@google.com>
parents:
43153
diff
changeset
|
27 bdiff_fuzzer: bdiff.cc bdiff-oss-fuzz.o |
38230
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
28 $(CXX) $(CXXFLAGS) -std=c++17 -I../../mercurial bdiff.cc \ |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
29 bdiff-oss-fuzz.o $(LIB_FUZZING_ENGINE) -o \ |
38174
36d55f90e2a3
fuzzutil: make it possible to use absl when C++17 isn't supported
Augie Fackler <augie@google.com>
parents:
38173
diff
changeset
|
30 $$OUT/bdiff_fuzzer |
35670
2b9e2415f5b5
contrib: add some basic scaffolding for some fuzz test targets
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
31 |
38246
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
32 mpatch.o: ../../mercurial/mpatch.c |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
33 $(CC) -g -O1 -fsanitize=fuzzer-no-link,address -c -o mpatch.o \ |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
34 ../../mercurial/mpatch.c |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
35 |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
36 mpatch: CXXFLAGS += -std=c++17 |
43615
6f5c352f41b6
fuzz: clean out most of fuzzutil
Augie Fackler <augie@google.com>
parents:
43153
diff
changeset
|
37 mpatch: mpatch.cc mpatch.o |
38246
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
38 $(CXX) $(CXXFLAGS) -DHG_FUZZER_INCLUDE_MAIN=1 -g -O1 -fsanitize=fuzzer-no-link,address \ |
43615
6f5c352f41b6
fuzz: clean out most of fuzzutil
Augie Fackler <augie@google.com>
parents:
43153
diff
changeset
|
39 -I../../mercurial mpatch.cc mpatch.o -o mpatch |
38246
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
40 |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
41 mpatch-oss-fuzz.o: ../../mercurial/mpatch.c |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
42 $(CC) $(CFLAGS) -c -o mpatch-oss-fuzz.o ../../mercurial/mpatch.c |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
43 |
43615
6f5c352f41b6
fuzz: clean out most of fuzzutil
Augie Fackler <augie@google.com>
parents:
43153
diff
changeset
|
44 mpatch_fuzzer: mpatch.cc mpatch-oss-fuzz.o |
38246
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
45 $(CXX) $(CXXFLAGS) -std=c++17 -I../../mercurial mpatch.cc \ |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
46 mpatch-oss-fuzz.o $(LIB_FUZZING_ENGINE) -o \ |
38246
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
47 $$OUT/mpatch_fuzzer |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
48 |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
49 mpatch_corpus.zip: |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
50 python mpatch_corpus.py $$OUT/mpatch_fuzzer_seed_corpus.zip |
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
51 |
36679
624cbd1477a6
fuzz: add a fuzzer for xdiff
Augie Fackler <augie@google.com>
parents:
35670
diff
changeset
|
52 x%.o: ../../mercurial/thirdparty/xdiff/x%.c ../../mercurial/thirdparty/xdiff/*.h |
38230
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
53 $(CC) -g -O1 -fsanitize=fuzzer-no-link,address -c \ |
36679
624cbd1477a6
fuzz: add a fuzzer for xdiff
Augie Fackler <augie@google.com>
parents:
35670
diff
changeset
|
54 -o $@ \ |
624cbd1477a6
fuzz: add a fuzzer for xdiff
Augie Fackler <augie@google.com>
parents:
35670
diff
changeset
|
55 $< |
624cbd1477a6
fuzz: add a fuzzer for xdiff
Augie Fackler <augie@google.com>
parents:
35670
diff
changeset
|
56 |
38233
74f89b7a4268
fuzz: compile xdiff.cc with -std=c++17
Yuya Nishihara <yuya@tcha.org>
parents:
38231
diff
changeset
|
57 xdiff: CXXFLAGS += -std=c++17 |
43615
6f5c352f41b6
fuzz: clean out most of fuzzutil
Augie Fackler <augie@google.com>
parents:
43153
diff
changeset
|
58 xdiff: xdiff.cc xdiffi.o xprepare.o xutils.o |
38230
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
59 $(CXX) $(CXXFLAGS) -DHG_FUZZER_INCLUDE_MAIN=1 -g -O1 -fsanitize=fuzzer-no-link,address \ |
36679
624cbd1477a6
fuzz: add a fuzzer for xdiff
Augie Fackler <augie@google.com>
parents:
35670
diff
changeset
|
60 -I../../mercurial xdiff.cc \ |
43615
6f5c352f41b6
fuzz: clean out most of fuzzutil
Augie Fackler <augie@google.com>
parents:
43153
diff
changeset
|
61 xdiffi.o xprepare.o xutils.o -o xdiff |
35670
2b9e2415f5b5
contrib: add some basic scaffolding for some fuzz test targets
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
62 |
36679
624cbd1477a6
fuzz: add a fuzzer for xdiff
Augie Fackler <augie@google.com>
parents:
35670
diff
changeset
|
63 fuzz-x%.o: ../../mercurial/thirdparty/xdiff/x%.c ../../mercurial/thirdparty/xdiff/*.h |
38230
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
64 $(CC) $(CFLAGS) -c \ |
36679
624cbd1477a6
fuzz: add a fuzzer for xdiff
Augie Fackler <augie@google.com>
parents:
35670
diff
changeset
|
65 -o $@ \ |
624cbd1477a6
fuzz: add a fuzzer for xdiff
Augie Fackler <augie@google.com>
parents:
35670
diff
changeset
|
66 $< |
624cbd1477a6
fuzz: add a fuzzer for xdiff
Augie Fackler <augie@google.com>
parents:
35670
diff
changeset
|
67 |
43615
6f5c352f41b6
fuzz: clean out most of fuzzutil
Augie Fackler <augie@google.com>
parents:
43153
diff
changeset
|
68 xdiff_fuzzer: xdiff.cc fuzz-xdiffi.o fuzz-xprepare.o fuzz-xutils.o |
38230
bf901559e647
fuzz: expand variables by make
Yuya Nishihara <yuya@tcha.org>
parents:
38175
diff
changeset
|
69 $(CXX) $(CXXFLAGS) -std=c++17 -I../../mercurial xdiff.cc \ |
43615
6f5c352f41b6
fuzz: clean out most of fuzzutil
Augie Fackler <augie@google.com>
parents:
43153
diff
changeset
|
70 fuzz-xdiffi.o fuzz-xprepare.o fuzz-xutils.o \ |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
71 $(LIB_FUZZING_ENGINE) -o $$OUT/xdiff_fuzzer |
36679
624cbd1477a6
fuzz: add a fuzzer for xdiff
Augie Fackler <augie@google.com>
parents:
35670
diff
changeset
|
72 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
73 manifest.o: ../../mercurial/cext/manifest.c |
40053
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
74 $(CC) $(CFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
75 -I../../mercurial \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
76 -c -o manifest.o ../../mercurial/cext/manifest.c |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
77 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
78 charencode.o: ../../mercurial/cext/charencode.c |
40053
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
79 $(CC) $(CFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
80 -I../../mercurial \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
81 -c -o charencode.o ../../mercurial/cext/charencode.c |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
82 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
83 parsers.o: ../../mercurial/cext/parsers.c |
40053
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
84 $(CC) $(CFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
85 -I../../mercurial \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
86 -c -o parsers.o ../../mercurial/cext/parsers.c |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
87 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
88 dirs.o: ../../mercurial/cext/dirs.c |
40053
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
89 $(CC) $(CFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
90 -I../../mercurial \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
91 -c -o dirs.o ../../mercurial/cext/dirs.c |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
92 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
93 pathencode.o: ../../mercurial/cext/pathencode.c |
40053
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
94 $(CC) $(CFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
95 -I../../mercurial \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
96 -c -o pathencode.o ../../mercurial/cext/pathencode.c |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
97 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
98 revlog.o: ../../mercurial/cext/revlog.c |
40053
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
99 $(CC) $(CFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
100 -I../../mercurial \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
101 -c -o revlog.o ../../mercurial/cext/revlog.c |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
102 |
43150
7ff40418c6bf
fuzz: new fuzzer for dirs.c
Augie Fackler <augie@google.com>
parents:
41183
diff
changeset
|
103 dirs_fuzzer: dirs.cc manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o |
7ff40418c6bf
fuzz: new fuzzer for dirs.c
Augie Fackler <augie@google.com>
parents:
41183
diff
changeset
|
104 $(CXX) $(CXXFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
7ff40418c6bf
fuzz: new fuzzer for dirs.c
Augie Fackler <augie@google.com>
parents:
41183
diff
changeset
|
105 -Wno-register -Wno-macro-redefined \ |
7ff40418c6bf
fuzz: new fuzzer for dirs.c
Augie Fackler <augie@google.com>
parents:
41183
diff
changeset
|
106 -I../../mercurial dirs.cc \ |
7ff40418c6bf
fuzz: new fuzzer for dirs.c
Augie Fackler <augie@google.com>
parents:
41183
diff
changeset
|
107 manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o \ |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
108 $(LIB_FUZZING_ENGINE) `$$OUT/sanpy/bin/python-config --ldflags` \ |
43150
7ff40418c6bf
fuzz: new fuzzer for dirs.c
Augie Fackler <augie@google.com>
parents:
41183
diff
changeset
|
109 -o $$OUT/dirs_fuzzer |
7ff40418c6bf
fuzz: new fuzzer for dirs.c
Augie Fackler <augie@google.com>
parents:
41183
diff
changeset
|
110 |
43152
b37dd26935ee
fuzz: new fuzzer for fncache-related functions
Augie Fackler <augie@google.com>
parents:
43150
diff
changeset
|
111 fncache_fuzzer: fncache.cc manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o |
b37dd26935ee
fuzz: new fuzzer for fncache-related functions
Augie Fackler <augie@google.com>
parents:
43150
diff
changeset
|
112 $(CXX) $(CXXFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
b37dd26935ee
fuzz: new fuzzer for fncache-related functions
Augie Fackler <augie@google.com>
parents:
43150
diff
changeset
|
113 -Wno-register -Wno-macro-redefined \ |
b37dd26935ee
fuzz: new fuzzer for fncache-related functions
Augie Fackler <augie@google.com>
parents:
43150
diff
changeset
|
114 -I../../mercurial fncache.cc \ |
b37dd26935ee
fuzz: new fuzzer for fncache-related functions
Augie Fackler <augie@google.com>
parents:
43150
diff
changeset
|
115 manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o \ |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
116 $(LIB_FUZZING_ENGINE) `$$OUT/sanpy/bin/python-config --ldflags` \ |
43152
b37dd26935ee
fuzz: new fuzzer for fncache-related functions
Augie Fackler <augie@google.com>
parents:
43150
diff
changeset
|
117 -o $$OUT/fncache_fuzzer |
b37dd26935ee
fuzz: new fuzzer for fncache-related functions
Augie Fackler <augie@google.com>
parents:
43150
diff
changeset
|
118 |
43153
741fb1a95da2
fuzz: new target to fuzz jsonescapeu8fast
Augie Fackler <augie@google.com>
parents:
43152
diff
changeset
|
119 jsonescapeu8fast_fuzzer: jsonescapeu8fast.cc manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o |
741fb1a95da2
fuzz: new target to fuzz jsonescapeu8fast
Augie Fackler <augie@google.com>
parents:
43152
diff
changeset
|
120 $(CXX) $(CXXFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
741fb1a95da2
fuzz: new target to fuzz jsonescapeu8fast
Augie Fackler <augie@google.com>
parents:
43152
diff
changeset
|
121 -Wno-register -Wno-macro-redefined \ |
741fb1a95da2
fuzz: new target to fuzz jsonescapeu8fast
Augie Fackler <augie@google.com>
parents:
43152
diff
changeset
|
122 -I../../mercurial jsonescapeu8fast.cc \ |
741fb1a95da2
fuzz: new target to fuzz jsonescapeu8fast
Augie Fackler <augie@google.com>
parents:
43152
diff
changeset
|
123 manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o \ |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
124 $(LIB_FUZZING_ENGINE) `$$OUT/sanpy/bin/python-config --ldflags` \ |
43153
741fb1a95da2
fuzz: new target to fuzz jsonescapeu8fast
Augie Fackler <augie@google.com>
parents:
43152
diff
changeset
|
125 -o $$OUT/jsonescapeu8fast_fuzzer |
741fb1a95da2
fuzz: new target to fuzz jsonescapeu8fast
Augie Fackler <augie@google.com>
parents:
43152
diff
changeset
|
126 |
43150
7ff40418c6bf
fuzz: new fuzzer for dirs.c
Augie Fackler <augie@google.com>
parents:
41183
diff
changeset
|
127 manifest_corpus.zip: |
7ff40418c6bf
fuzz: new fuzzer for dirs.c
Augie Fackler <augie@google.com>
parents:
41183
diff
changeset
|
128 python manifest_corpus.py $$OUT/manifest_fuzzer_seed_corpus.zip |
7ff40418c6bf
fuzz: new fuzzer for dirs.c
Augie Fackler <augie@google.com>
parents:
41183
diff
changeset
|
129 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
130 manifest_fuzzer: manifest.cc manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o |
40053
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
131 $(CXX) $(CXXFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
132 -Wno-register -Wno-macro-redefined \ |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
133 -I../../mercurial manifest.cc \ |
41013
ef103c96ed33
fuzz: extract Python initialization to utility package
Augie Fackler <augie@google.com>
parents:
41012
diff
changeset
|
134 manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o \ |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
135 $(LIB_FUZZING_ENGINE) `$$OUT/sanpy/bin/python-config --ldflags` \ |
40053
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
136 -o $$OUT/manifest_fuzzer |
8c692a6b5ad1
fuzz: new fuzzer for cext/manifest.c
Augie Fackler <augie@google.com>
parents:
38246
diff
changeset
|
137 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
138 revlog_fuzzer: revlog.cc manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o |
41014
c06f0ef9a5ba
fuzz: new fuzzer for revlog's parse_index2 method
Augie Fackler <augie@google.com>
parents:
41013
diff
changeset
|
139 $(CXX) $(CXXFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
c06f0ef9a5ba
fuzz: new fuzzer for revlog's parse_index2 method
Augie Fackler <augie@google.com>
parents:
41013
diff
changeset
|
140 -Wno-register -Wno-macro-redefined \ |
c06f0ef9a5ba
fuzz: new fuzzer for revlog's parse_index2 method
Augie Fackler <augie@google.com>
parents:
41013
diff
changeset
|
141 -I../../mercurial revlog.cc \ |
c06f0ef9a5ba
fuzz: new fuzzer for revlog's parse_index2 method
Augie Fackler <augie@google.com>
parents:
41013
diff
changeset
|
142 manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o \ |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
143 $(LIB_FUZZING_ENGINE) `$$OUT/sanpy/bin/python-config --ldflags` \ |
41014
c06f0ef9a5ba
fuzz: new fuzzer for revlog's parse_index2 method
Augie Fackler <augie@google.com>
parents:
41013
diff
changeset
|
144 -o $$OUT/revlog_fuzzer |
c06f0ef9a5ba
fuzz: new fuzzer for revlog's parse_index2 method
Augie Fackler <augie@google.com>
parents:
41013
diff
changeset
|
145 |
c06f0ef9a5ba
fuzz: new fuzzer for revlog's parse_index2 method
Augie Fackler <augie@google.com>
parents:
41013
diff
changeset
|
146 revlog_corpus.zip: |
c06f0ef9a5ba
fuzz: new fuzzer for revlog's parse_index2 method
Augie Fackler <augie@google.com>
parents:
41013
diff
changeset
|
147 python revlog_corpus.py $$OUT/revlog_fuzzer_seed_corpus.zip |
c06f0ef9a5ba
fuzz: new fuzzer for revlog's parse_index2 method
Augie Fackler <augie@google.com>
parents:
41013
diff
changeset
|
148 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
149 dirstate_fuzzer: dirstate.cc manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o |
41015
b444407f635b
fuzz: new fuzzer for dirstate parser
Augie Fackler <augie@google.com>
parents:
41014
diff
changeset
|
150 $(CXX) $(CXXFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
b444407f635b
fuzz: new fuzzer for dirstate parser
Augie Fackler <augie@google.com>
parents:
41014
diff
changeset
|
151 -Wno-register -Wno-macro-redefined \ |
b444407f635b
fuzz: new fuzzer for dirstate parser
Augie Fackler <augie@google.com>
parents:
41014
diff
changeset
|
152 -I../../mercurial dirstate.cc \ |
b444407f635b
fuzz: new fuzzer for dirstate parser
Augie Fackler <augie@google.com>
parents:
41014
diff
changeset
|
153 manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o \ |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
154 $(LIB_FUZZING_ENGINE) `$$OUT/sanpy/bin/python-config --ldflags` \ |
41015
b444407f635b
fuzz: new fuzzer for dirstate parser
Augie Fackler <augie@google.com>
parents:
41014
diff
changeset
|
155 -o $$OUT/dirstate_fuzzer |
b444407f635b
fuzz: new fuzzer for dirstate parser
Augie Fackler <augie@google.com>
parents:
41014
diff
changeset
|
156 |
b444407f635b
fuzz: new fuzzer for dirstate parser
Augie Fackler <augie@google.com>
parents:
41014
diff
changeset
|
157 dirstate_corpus.zip: |
b444407f635b
fuzz: new fuzzer for dirstate parser
Augie Fackler <augie@google.com>
parents:
41014
diff
changeset
|
158 python dirstate_corpus.py $$OUT/dirstate_fuzzer_seed_corpus.zip |
b444407f635b
fuzz: new fuzzer for dirstate parser
Augie Fackler <augie@google.com>
parents:
41014
diff
changeset
|
159 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
160 fm1readmarkers_fuzzer: fm1readmarkers.cc manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o |
41024
6a951f535fee
fuzz: new fuzzer for parsers.fm1readmarkers
Augie Fackler <augie@google.com>
parents:
41015
diff
changeset
|
161 $(CXX) $(CXXFLAGS) `$$OUT/sanpy/bin/python-config --cflags` \ |
6a951f535fee
fuzz: new fuzzer for parsers.fm1readmarkers
Augie Fackler <augie@google.com>
parents:
41015
diff
changeset
|
162 -Wno-register -Wno-macro-redefined \ |
6a951f535fee
fuzz: new fuzzer for parsers.fm1readmarkers
Augie Fackler <augie@google.com>
parents:
41015
diff
changeset
|
163 -I../../mercurial fm1readmarkers.cc \ |
6a951f535fee
fuzz: new fuzzer for parsers.fm1readmarkers
Augie Fackler <augie@google.com>
parents:
41015
diff
changeset
|
164 manifest.o charencode.o parsers.o dirs.o pathencode.o revlog.o pyutil.o \ |
43810
53f582bee3d1
fuzz: follow modern guidelines and use LIB_FUZZING_ENGINE
Augie Fackler <augie@google.com>
parents:
43615
diff
changeset
|
165 $(LIB_FUZZING_ENGINE) `$$OUT/sanpy/bin/python-config --ldflags` \ |
41024
6a951f535fee
fuzz: new fuzzer for parsers.fm1readmarkers
Augie Fackler <augie@google.com>
parents:
41015
diff
changeset
|
166 -o $$OUT/fm1readmarkers_fuzzer |
6a951f535fee
fuzz: new fuzzer for parsers.fm1readmarkers
Augie Fackler <augie@google.com>
parents:
41015
diff
changeset
|
167 |
6a951f535fee
fuzz: new fuzzer for parsers.fm1readmarkers
Augie Fackler <augie@google.com>
parents:
41015
diff
changeset
|
168 fm1readmarkers_corpus.zip: |
6a951f535fee
fuzz: new fuzzer for parsers.fm1readmarkers
Augie Fackler <augie@google.com>
parents:
41015
diff
changeset
|
169 python fm1readmarkers_corpus.py $$OUT/fm1readmarkers_fuzzer_seed_corpus.zip |
6a951f535fee
fuzz: new fuzzer for parsers.fm1readmarkers
Augie Fackler <augie@google.com>
parents:
41015
diff
changeset
|
170 |
38175 | 171 clean: |
38234
9db30f438ddd
fuzz: fix "make clean" to pass even if no binaries built yet
Yuya Nishihara <yuya@tcha.org>
parents:
38233
diff
changeset
|
172 $(RM) *.o *_fuzzer \ |
38175 | 173 bdiff \ |
38246
46dcb9f14900
fuzz: new fuzzer for the mpatch code
Augie Fackler <augie@google.com>
parents:
38234
diff
changeset
|
174 mpatch \ |
38175 | 175 xdiff |
176 | |
43153
741fb1a95da2
fuzz: new target to fuzz jsonescapeu8fast
Augie Fackler <augie@google.com>
parents:
43152
diff
changeset
|
177 oss-fuzz: bdiff_fuzzer mpatch_fuzzer mpatch_corpus.zip xdiff_fuzzer dirs_fuzzer fncache_fuzzer jsonescapeu8fast_fuzzer manifest_fuzzer manifest_corpus.zip revlog_fuzzer revlog_corpus.zip dirstate_fuzzer dirstate_corpus.zip fm1readmarkers_fuzzer fm1readmarkers_corpus.zip |
35670
2b9e2415f5b5
contrib: add some basic scaffolding for some fuzz test targets
Augie Fackler <augie@google.com>
parents:
diff
changeset
|
178 |
41183
c01fac6749e5
fuzz: stop building Python in the Makefile
Augie Fackler <augie@google.com>
parents:
41024
diff
changeset
|
179 .PHONY: all clean oss-fuzz |