#!/bin/bash # Build Skia with Address Sanitizer. # # Address Sanitizer is available in LLVM (and Clang) 3.1 and above, as well as # GCC 4.8. For now, this script assumes the use of Clang 3.2 or newer, which # uses different flag syntax from 3.1. # # For more information, see: # https://code.google.com/p/address-sanitizer/wiki/AddressSanitizer makeVars="$@" export CC="$(which clang)" export CXX="$(which clang++)" export LINK="$(which clang)" noClang="Couldn't find Clang on this machine!" if [[ -z "${CC}" ]]; then echo "${noClang}" exit 1 fi if [[ -z "${CXX}" ]]; then echo "${noClang}" exit 1 fi if [[ -z "${LINK}" ]]; then echo "${noClang}" exit 1 fi export GYP_DEFINES="skia_asan_build=1 ${GYP_DEFINES}" python gyp_skia if [[ "$?" != "0" ]]; then exit 1 fi make ${makeVars} if [[ "$?" != "0" ]]; then exit 1 fi