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