blob: 7d318f17962a71f7af75d66bcbdc74b0f5441b7d [file] [log] [blame]
Peter Boström62e9bda2015-11-23 15:12:06 +01001# Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
9import("//build/config/features.gni")
katrielc839315b2016-06-20 06:03:39 -070010import("//testing/test.gni")
11import("//testing/libfuzzer/fuzzer_test.gni")
Peter Boström62e9bda2015-11-23 15:12:06 +010012
13static_library("webrtc_fuzzer_main") {
Henrik Lundinfe32a762015-12-08 11:27:27 +010014 public_configs = [ "../..:common_inherited_config" ]
Peter Boström62e9bda2015-11-23 15:12:06 +010015 sources = [
16 "webrtc_fuzzer_main.cc",
17 ]
18 deps = [
Peter Boström89d658f2015-11-25 21:58:36 +010019 "../../system_wrappers:field_trial_default",
Peter Boström871c4192015-11-26 14:52:23 +010020 "../../system_wrappers:metrics_default",
Peter Boström62e9bda2015-11-23 15:12:06 +010021 "//testing/libfuzzer:libfuzzer_main",
22 ]
23}
24
katrielc839315b2016-06-20 06:03:39 -070025template("webrtc_fuzzer_test") {
26 fuzzer_test(target_name) {
27 forward_variables_from(invoker, "*")
28 deps += [ ":webrtc_fuzzer_main" ]
29 if (is_clang) {
30 # Suppress warnings from Chrome's Clang plugins.
31 # See http://code.google.com/p/webrtc/issues/detail?id=163 for details
32 suppressed_configs = [ "//build/config/clang:find_bad_constructs" ]
33 }
34 }
35}
36
Peter Boström1e0cfd92015-12-17 14:28:16 +010037webrtc_fuzzer_test("h264_depacketizer_fuzzer") {
38 sources = [
39 "h264_depacketizer_fuzzer.cc",
40 ]
41 deps = [
42 "../../modules/rtp_rtcp",
43 ]
44}
45
46webrtc_fuzzer_test("vp8_depacketizer_fuzzer") {
47 sources = [
48 "vp8_depacketizer_fuzzer.cc",
49 ]
50 deps = [
51 "../../modules/rtp_rtcp",
52 ]
53}
54
Peter Boström78315b92015-12-15 21:57:52 +010055webrtc_fuzzer_test("vp9_depacketizer_fuzzer") {
Peter Boström62e9bda2015-11-23 15:12:06 +010056 sources = [
57 "vp9_depacketizer_fuzzer.cc",
58 ]
59 deps = [
Peter Boström62e9bda2015-11-23 15:12:06 +010060 "../../modules/rtp_rtcp",
61 ]
Peter Boström62e9bda2015-11-23 15:12:06 +010062}
Peter Boström871c4192015-11-26 14:52:23 +010063
Peter Boström78315b92015-12-15 21:57:52 +010064webrtc_fuzzer_test("vp8_qp_parser_fuzzer") {
Peter Boström871c4192015-11-26 14:52:23 +010065 sources = [
66 "vp8_qp_parser_fuzzer.cc",
67 ]
68 deps = [
Peter Boström871c4192015-11-26 14:52:23 +010069 "../../modules/video_coding/",
70 ]
Peter Boström871c4192015-11-26 14:52:23 +010071}
Henrik Lundinfe32a762015-12-08 11:27:27 +010072
Peter Boström78315b92015-12-15 21:57:52 +010073webrtc_fuzzer_test("producer_fec_fuzzer") {
Stefan Holmer4c1093b2015-12-11 18:25:45 +010074 sources = [
75 "producer_fec_fuzzer.cc",
76 ]
77 deps = [
Stefan Holmer4c1093b2015-12-11 18:25:45 +010078 "../../modules/rtp_rtcp/",
79 ]
Stefan Holmer4c1093b2015-12-11 18:25:45 +010080}
81
Peter Boströmba3e25e2016-02-23 11:35:30 +010082webrtc_fuzzer_test("rtcp_receiver_fuzzer") {
83 sources = [
84 "rtcp_receiver_fuzzer.cc",
85 ]
86 deps = [
87 "../../modules/rtp_rtcp/",
88 ]
katrielcbddc94b2016-06-22 06:43:22 -070089 seed_corpus = "corpora/rtcp-corpus"
Peter Boströmba3e25e2016-02-23 11:35:30 +010090}
91
danilchap1edb7ab2016-04-20 05:25:10 -070092webrtc_fuzzer_test("rtp_packet_fuzzer") {
93 sources = [
94 "rtp_packet_fuzzer.cc",
95 ]
96 deps = [
97 "../../modules/rtp_rtcp/",
98 ]
katrielcbddc94b2016-06-22 06:43:22 -070099 seed_corpus = "corpora/rtp-corpus"
danilchap1edb7ab2016-04-20 05:25:10 -0700100}
101
Henrik Lundinfe32a762015-12-08 11:27:27 +0100102source_set("audio_decoder_fuzzer") {
Peter Boström78315b92015-12-15 21:57:52 +0100103 public_configs = [ "../..:common_inherited_config" ]
Henrik Lundinfe32a762015-12-08 11:27:27 +0100104 sources = [
105 "audio_decoder_fuzzer.cc",
106 "audio_decoder_fuzzer.h",
107 ]
Henrik Lundinfe32a762015-12-08 11:27:27 +0100108}
109
Peter Boström78315b92015-12-15 21:57:52 +0100110webrtc_fuzzer_test("audio_decoder_ilbc_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100111 sources = [
112 "audio_decoder_ilbc_fuzzer.cc",
113 ]
114 deps = [
115 ":audio_decoder_fuzzer",
116 "../../modules/audio_coding:ilbc",
117 ]
118}
119
Peter Boström78315b92015-12-15 21:57:52 +0100120webrtc_fuzzer_test("audio_decoder_isac_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100121 sources = [
122 "audio_decoder_isac_fuzzer.cc",
123 ]
124 deps = [
125 ":audio_decoder_fuzzer",
126 "../../modules/audio_coding:isac",
127 ]
128}
129
henrik.lundinfd2be272016-02-09 00:00:23 -0800130webrtc_fuzzer_test("audio_decoder_isac_incoming_packet_fuzzer") {
131 sources = [
132 "audio_decoder_isac_incoming_packet_fuzzer.cc",
133 ]
134 deps = [
135 ":audio_decoder_fuzzer",
136 "../../modules/audio_coding:isac",
137 ]
138}
139
Peter Boström78315b92015-12-15 21:57:52 +0100140webrtc_fuzzer_test("audio_decoder_isacfix_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100141 sources = [
142 "audio_decoder_isacfix_fuzzer.cc",
143 ]
144 deps = [
145 ":audio_decoder_fuzzer",
146 "../../modules/audio_coding:isac_fix",
147 ]
148}
149
Peter Boström78315b92015-12-15 21:57:52 +0100150webrtc_fuzzer_test("audio_decoder_opus_fuzzer") {
Henrik Lundinfe32a762015-12-08 11:27:27 +0100151 sources = [
152 "audio_decoder_opus_fuzzer.cc",
153 ]
154 deps = [
155 ":audio_decoder_fuzzer",
156 "../../modules/audio_coding:webrtc_opus",
157 ]
158}
henrik.lundinfd2be272016-02-09 00:00:23 -0800159
160webrtc_fuzzer_test("audio_decoder_opus_redundant_fuzzer") {
161 sources = [
162 "audio_decoder_opus_redundant_fuzzer.cc",
163 ]
164 deps = [
165 ":audio_decoder_fuzzer",
166 "../../modules/audio_coding:webrtc_opus",
167 ]
168}