1#!/bin/bash -eu 2# Copyright 2019 Google Inc. 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16################################################################################ 17 18#create zip files with initial corpus, taken from version control. 19#for f in $(ls fuzzers/initial_corpus/) ;do 20# zip -j -r $OUT/fuzzer_${f}_seed_corpus.zip fuzzers/initial_corpus/$f 21#done 22 23mkdir build 24cd build 25 26# use C++ 14 instead of 17, because even if clang is 27# bleeding edge, cmake is old in the oss fuzz image. 28 29cmake .. \ 30-GNinja \ 31-DCMAKE_BUILD_TYPE=Debug \ 32-DCMAKE_CXX_STANDARD=14 \ 33-DFMT_DOC=Off \ 34-DFMT_TEST=Off \ 35-DFMT_SAFE_DURATION_CAST=On \ 36-DFMT_FUZZ=On \ 37-DFMT_FUZZ_LINKMAIN=Off \ 38-DFMT_FUZZ_LDFLAGS=$LIB_FUZZING_ENGINE 39 40cmake --build . 41 42cp bin/*fuzzer $OUT 43