solidity/scripts/ci/build_ossfuzz.sh
2020-10-15 12:59:18 +02:00

28 lines
600 B
Bash
Executable File

#!/usr/bin/env bash
set -ex
ROOTDIR="/root/project"
BUILDDIR="${ROOTDIR}/build"
mkdir -p "${BUILDDIR}" && mkdir -p "$BUILDDIR/deps"
generate_protobuf_bindings()
{
cd "${ROOTDIR}"/test/tools/ossfuzz
# Generate protobuf C++ bindings
for protoName in yul abiV2 sol;
do
protoc "${protoName}"Proto.proto --cpp_out .
done
}
build_fuzzers()
{
cd "${BUILDDIR}"
cmake .. -DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE:-Release}" \
-DCMAKE_TOOLCHAIN_FILE="${ROOTDIR}"/cmake/toolchains/libfuzzer.cmake
make ossfuzz ossfuzz_proto ossfuzz_abiv2 -j 4
}
generate_protobuf_bindings
build_fuzzers