Home | History | Annotate | Download | only in tools
      1 #!/bin/bash
      2 
      3 # Build Skia with one of Clang's many sanitizers.
      4 #
      5 # $ tools/xsan_build {address,thread,undefined,etc.} [any other flags to pass to make...]
      6 #
      7 # This script assumes the use of Clang >=3.2.
      8 #
      9 # For more information, see:
     10 #   http://clang.llvm.org/docs/UsersManual.html#controlling-code-generation
     11 
     12 set -e
     13 
     14 sanitizer=$1
     15 shift
     16 args="$@"
     17 
     18 export CC="$(which clang)"
     19 export CXX="$(which clang++)"
     20 
     21 if [[ -z "${CC}" ]] || [[ -z "${CXX}" ]]; then
     22   echo "Couldn't find Clang on this machine!"
     23   exit 1
     24 fi
     25 
     26 echo "CC=$CC"
     27 echo "CXX=$CXX"
     28 $CC --version
     29 
     30 export GYP_DEFINES="skia_sanitizer=$sanitizer ${GYP_DEFINES}"
     31 make ${args}
     32