ref: 785f00feccb5ed7c5739fc72bdcb9b422d8386ca
parent: 63eef332220ec5321a507280dbf4b2da02d1d1fe
author: Janne Grunau <janne-vlc@jannau.net>
date: Fri May 24 16:53:55 EDT 2019
build: add option for fuzzer specific LDFLAGS Needed for oss-fuzz after switching to '-fsanitize=fuzzer' for the libfuzzer based build. Adding '-fsanitize=fuzzer' for all oss-fuzz based build breaks afl.
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -36,6 +36,10 @@
value: 'none',
description: 'Select the fuzzing engine')
+option('fuzzer_ldflags',
+ type: 'string',
+ description: 'Extra LDFLAGS used during linking of fuzzing binaries')
+
option('stack_alignment',
type: 'integer',
value: 0)
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -98,6 +98,10 @@
dav1d_fuzzer_sources = files('libfuzzer/dav1d_fuzzer.c')
fuzzer_ldflags = []
+if get_option('fuzzer_ldflags') != ''
+ fuzzer_ldflags += [get_option('fuzzer_ldflags')]
+endif
+
if fuzzing_engine == 'none'
dav1d_fuzzer_sources += files('libfuzzer/main.c')
elif fuzzing_engine == 'libfuzzer'
@@ -104,7 +108,7 @@
fuzzer_ldflags += ['-fsanitize=fuzzer']
elif fuzzing_engine == 'oss-fuzz'
# libFuzzingEngine needs libc++
- fuzzer_ldflags += ['-fsanitize=fuzzer', '-lFuzzingEngine', '-lc++']
+ fuzzer_ldflags += ['-lc++']
endif
dav1d_fuzzer = executable('dav1d_fuzzer',