blob: bd1da14b370a0e53aff56580a20673c5c25deea7 [file] [log] [blame]
function compile_fuzzer {
path=$1
function=$2
fuzzer=$3
# Instrument all Go files relevant to this fuzzer
go-fuzz-build -libfuzzer -func $function -o $fuzzer.a $path
# Instrumented, compiled Go ($fuzzer.a) + fuzzing engine = fuzzer binary
$CXX $CXXFLAGS $LIB_FUZZING_ENGINE $fuzzer.a -lpthread -o $OUT/$fuzzer
}
for x in internal/fuzz/*; do
if [ -d $x/corpus ]; then
name=$(basename $x)
compile_fuzzer ./$x Fuzz $name
zip -jr $OUT/${name}_seed_corpus.zip $x/corpus
fi
done