2019-06-28 20:22:51 +08:00
|
|
|
#!/bin/bash -eu
|
|
|
|
|
|
|
|
# This script is called by the oss-fuzz main project when compiling the fuzz
|
|
|
|
# targets. This script is regression tested by travisoss.sh.
|
|
|
|
|
|
|
|
# Save off the current folder as the build root.
|
|
|
|
export BUILD_ROOT=$PWD
|
|
|
|
|
|
|
|
echo "CC: $CC"
|
|
|
|
echo "CXX: $CXX"
|
|
|
|
echo "LIB_FUZZING_ENGINE: $LIB_FUZZING_ENGINE"
|
|
|
|
echo "CFLAGS: $CFLAGS"
|
|
|
|
echo "CXXFLAGS: $CXXFLAGS"
|
|
|
|
echo "OUT: $OUT"
|
|
|
|
|
|
|
|
export MAKEFLAGS+="-j$(nproc)"
|
|
|
|
|
|
|
|
# Install dependencies
|
|
|
|
apt-get -y install automake libtool
|
|
|
|
|
|
|
|
# Compile the fuzzer.
|
|
|
|
autoreconf -i
|
2019-07-18 21:49:07 +08:00
|
|
|
./configure --enable-ossfuzzers
|
2019-06-28 20:22:51 +08:00
|
|
|
make
|
|
|
|
|
|
|
|
# Copy the fuzzer to the output directory.
|
2019-07-18 21:49:07 +08:00
|
|
|
cp -v test/ossfuzz/json_load_dump_fuzzer $OUT/
|
2019-07-25 02:41:45 +08:00
|
|
|
|
|
|
|
# Zip up all input files to use as a test corpus
|
|
|
|
find test/suites -name "input" -print | zip $OUT/json_load_dump_fuzzer_seed_corpus.zip -@
|