• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1fuzz_targets = [
2  'fuzz_bookmark',
3  'fuzz_date_parse',
4  'fuzz_date_time_new_from_iso8601',
5  'fuzz_dbus_message',
6  'fuzz_inet_address_mask_new_from_string',
7  'fuzz_inet_address_new_from_string',
8  'fuzz_inet_socket_address_new_from_string',
9  'fuzz_key',
10  'fuzz_network_address_parse',
11  'fuzz_network_address_parse_uri',
12  'fuzz_uri_escape',
13  'fuzz_uri_parse',
14  'fuzz_uri_parse_params',
15  'fuzz_variant_binary',
16  'fuzz_variant_text',
17]
18
19deps = [libgmodule_dep, libgio_dep, libglib_dep, libgobject_dep]
20
21extra_sources = []
22extra_c_args = cc.get_supported_arguments('-Werror=unused-function')
23
24# Links in a static library provided by oss-fuzz, else a standalone driver.
25# https://github.com/google/oss-fuzz/blob/master/docs/new_project_guide.md#buildsh-script-environment
26fuzzing_engine = cxx.find_library('FuzzingEngine', required : get_option('oss_fuzz'))
27if fuzzing_engine.found()
28  deps += fuzzing_engine
29else
30  extra_sources += 'driver.c'
31endif
32
33foreach target_name : fuzz_targets
34  exe = executable(target_name, [extra_sources, target_name + '.c'],
35    c_args : extra_c_args,
36    dependencies : deps,
37  )
38endforeach
39