| #!/bin/bash | 
 |  | 
 | set -e # Fail on any error. | 
 | set -x # Display commands being run. | 
 |  | 
 | pushd `dirname $0` | 
 |  | 
 | if ! [ -x "$(command -v cmake)" ]; then | 
 |   echo 'cmake is not found. Please install it (e.g. sudo apt install cmake)' >&2 | 
 |   exit 1 | 
 | fi | 
 |  | 
 | if ! [ -x "$(command -v dot)" ]; then | 
 |   echo 'graphviz (dot) is not found. Please install it (e.g. sudo apt install graphviz)' >&2 | 
 |   exit 1 | 
 | fi | 
 |  | 
 | cmake_binary_dir=$1 | 
 |  | 
 | if [[ -z "${cmake_binary_dir}" ]]; then | 
 |   cmake_binary_dir="../../build" | 
 | fi | 
 |  | 
 | cp ./CMakeGraphVizOptions.cmake ${cmake_binary_dir}/ | 
 |  | 
 | pushd ${cmake_binary_dir} | 
 |  | 
 | cmake --graphviz=SwiftShader.dot .. | 
 | dot -Tpng -o SwiftShader.png SwiftShader.dot | 
 |  | 
 | if [ "$(uname)" == "Darwin" ]; then | 
 |   open SwiftShader.png | 
 | else | 
 |   xdg-open SwiftShader.png &>/dev/null & | 
 | fi | 
 |  | 
 | popd | 
 | popd |