Home | History | Annotate | Line # | Download | only in fuzz
build-coverage revision 1.1
      1 #!/bin/bash -eux
      2 #
      3 # Copyright (c) 2019 Yubico AB. All rights reserved.
      4 # Use of this source code is governed by a BSD-style
      5 # license that can be found in the LICENSE file.
      6 
      7 LIBCBOR=$1
      8 LIBFIDO2=$2
      9 
     10 CC=${CC:-clang}
     11 PKG_CONFIG_PATH=${PKG_CONFIG_PATH:-${LIBCBOR}/install/lib/pkgconfig}
     12 export CC PKG_CONFIG_PATH
     13 
     14 # Clean up.
     15 rm -rf ${LIBCBOR}/build ${LIBCBOR}/install ${LIBFIDO2}/build
     16 
     17 # Patch, build, and install libcbor.
     18 (cd ${LIBCBOR} && patch -N -l -s -p0 < ${LIBFIDO2}/fuzz/README) || true
     19 mkdir ${LIBCBOR}/build ${LIBCBOR}/install
     20 (cd ${LIBCBOR}/build && cmake -DCMAKE_INSTALL_PREFIX=${LIBCBOR}/install ..)
     21 make -C ${LIBCBOR}/build all install
     22 
     23 # Build libfido2.
     24 mkdir -p ${LIBFIDO2}/build
     25 (cd ${LIBFIDO2}/build && cmake -DFUZZ=1 -DLIBFUZZER=1 -DCOVERAGE=1 \
     26 	-DCMAKE_BUILD_TYPE=Debug ..)
     27 make -C ${LIBFIDO2}/build
     28