| #!/bin/bash | 
 | # Copyright 2021 The IREE Authors | 
 | # | 
 | # Licensed under the Apache License v2.0 with LLVM Exceptions. | 
 | # See https://llvm.org/LICENSE.txt for license information. | 
 | # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | 
 |  | 
 | # Sets up a CMake build. Requires that BUILD_DIR be set in the environment and | 
 | # expects to be *sourced* not invoked, since it sets environment variables. | 
 |  | 
 | set -euo pipefail | 
 |  | 
 | # Check these exist and print the versions for later debugging. | 
 | CMAKE_BIN="${CMAKE_BIN:-$(which cmake)}" | 
 | "${CMAKE_BIN}" --version | 
 | ninja --version | 
 | python3 --version | 
 |  | 
 | if [[ ! -z "${IREE_BUILD_SETUP_PYTHON_VENV:-}" ]]; then | 
 |   # We've been instructed to set up a venv. | 
 |   echo "Setting up venv at $IREE_BUILD_SETUP_PYTHON_VENV" | 
 |   python3 -m venv "$IREE_BUILD_SETUP_PYTHON_VENV" | 
 |   source "$IREE_BUILD_SETUP_PYTHON_VENV/bin/activate" | 
 |   IREE_PYTHON3_EXECUTABLE="$IREE_BUILD_SETUP_PYTHON_VENV/bin/python" | 
 |   python -m pip install -r runtime/bindings/python/iree/runtime/build_requirements.txt | 
 | else | 
 |   # Just use the host python and yolo with what may be installed. | 
 |   # In practice, certain callers take care of this themselves, and we trust | 
 |   # them to do it right. | 
 |   IREE_PYTHON3_EXECUTABLE="${IREE_PYTHON3_EXECUTABLE:-$(which python3)}" | 
 | fi | 
 |  | 
 | if [[ -d "${BUILD_DIR}" ]]; then | 
 |   echo "'${BUILD_DIR}' directory already exists. Will use cached results there." | 
 | else | 
 |   echo "'${BUILD_DIR}' directory does not already exist. Creating a new one." | 
 |   mkdir -p "${BUILD_DIR}" | 
 | fi |