1#!/bin/bash -eu 2# Copyright 2020 Google Inc. 3# Copyright 2020 Luca Boccassi <bluca@debian.org> 4# 5# Licensed under the Apache License, Version 2.0 (the "License"); 6# you may not use this file except in compliance with the License. 7# You may obtain a copy of the License at 8# 9# http://www.apache.org/licenses/LICENSE-2.0 10# 11# Unless required by applicable law or agreed to in writing, software 12# distributed under the License is distributed on an "AS IS" BASIS, 13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14# See the License for the specific language governing permissions and 15# limitations under the License. 16# 17################################################################################ 18 19cd $SRC/leveldb 20mkdir -p build && cd build 21cmake -DCMAKE_BUILD_TYPE=Release -DLEVELDB_BUILD_TESTS=0 \ 22 -DLEVELDB_BUILD_BENCHMARKS=0 .. && cmake --build . 23 24for fuzzer in fuzz_db; do 25 # Compile 26 $CXX $CXXFLAGS -c ../${fuzzer}.cc -o ${fuzzer}.o \ 27 -DLEVELDB_PLATFORM_POSIX=1 -std=c++11 -Wall \ 28 -I$SRC/leveldb/build/include -I$SRC/leveldb/ -I$SRC/leveldb/include 29 30 # Link 31 $CXX $LIB_FUZZING_ENGINE $CXXFLAGS ${fuzzer}.o -o $OUT/${fuzzer} libleveldb.a 32done 33 34# Copy options to out 35cp $SRC/*options $OUT/ 36