valijson/tests/fuzzing/oss-fuzz-build.sh
2021-07-31 11:00:37 +10:00

33 lines
810 B
Bash
Executable File

#!/bin/bash -eu
# This line causes an abort which breaks fuzzing:
sed -i '27d' include/valijson/utils/rapidjson_utils.hpp
mkdir build
cd build
cmake -Dvalijson_BUILD_EXAMPLES=FALSE \
-Dvalijson_EXCLUDE_BOOST=TRUE \
..
make -j$(nproc)
cd ../tests/fuzzing
find ../.. -name "*.o" -exec ar rcs fuzz_lib.a {} \;
$CXX $CXXFLAGS -DVALIJSON_USE_EXCEPTIONS=1 \
-I/src/valijson/thirdparty/rapidjson-48fbd8c/include \
-I/src/valijson/thirdparty/rapidjson-48fbd8c/include/rapidjson \
-I/src/valijson/include \
-I/src/valijson/include/valijson \
-I/src/valijson/include/valijson/adapters \
-c fuzzer.cpp -o fuzzer.o
$CXX $CXXFLAGS $LIB_FUZZING_ENGINE \
-DVALIJSON_USE_EXCEPTIONS=1 \
-rdynamic fuzzer.o \
-o $OUT/fuzzer fuzz_lib.a
zip $OUT/fuzzer_seed_corpus.zip \
$SRC/valijson/doc/schema/draft-03.json