1#!/bin/bash -eu 2# Copyright 2017 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./autogen.sh 19 20./configure CFLAGS="$CFLAGS -DNO_CHECK_MEMWIPE" \ 21 --enable-imc-test \ 22 --enable-tnccs-20 \ 23 --enable-fuzzing \ 24 --with-libfuzzer=$LIB_FUZZING_ENGINE \ 25 --enable-monolithic \ 26 --disable-shared \ 27 --enable-static 28 29make -j$(nproc) 30 31fuzzers=$(find fuzz -maxdepth 1 -executable -type f -name 'fuzz_*') 32for f in $fuzzers; do 33 fuzzer=$(basename $f) 34 cp $f $OUT/ 35 corpus=${fuzzer#fuzz_} 36 if [ -d "fuzzing-corpora/${corpus}" ]; then 37 zip -rj $OUT/${fuzzer}_seed_corpus.zip fuzzing-corpora/${corpus} 38 fi 39done 40