mirror of
https://github.com/tristanpenman/valijson.git
synced 2025-03-04 07:27:24 +01:00
33 lines
748 B
Bash
Executable File
33 lines
748 B
Bash
Executable File
#!/bin/bash -eu
|
|
|
|
git submodule update --init --depth 1 thirdparty
|
|
|
|
mkdir build
|
|
cd build
|
|
cmake \
|
|
-Dvalijson_BUILD_TESTS=FALSE \
|
|
-Dvalijson_BUILD_EXAMPLES=FALSE \
|
|
-Dvalijson_EXCLUDE_BOOST=TRUE \
|
|
..
|
|
|
|
make -j"$(nproc)"
|
|
|
|
cd ../tests/fuzzing
|
|
|
|
# CXXFLAGS may contain spaces
|
|
# shellcheck disable=SC2086
|
|
"$CXX" $CXXFLAGS "$LIB_FUZZING_ENGINE" \
|
|
-DVALIJSON_USE_EXCEPTIONS=1 \
|
|
-I/src/valijson/thirdparty/rapidjson/include \
|
|
-I/src/valijson/include \
|
|
fuzzer.cpp -o "${OUT}/fuzzer"
|
|
|
|
mkdir seed_corpus
|
|
|
|
find "${SRC}/valijson/thirdparty/JSON-Schema-Test-Suite/tests" -name "*.json" | while read file; do
|
|
sha1=$(sha1sum "$file" | awk '{print $1}')
|
|
cp "$file" seed_corpus/"${sha1}"
|
|
done
|
|
|
|
zip -j -r "${OUT}/fuzzer_seed_corpus.zip" seed_corpus
|