1#!/bin/bash 2set -ex 3 4source "$(dirname "${BASH_SOURCE[0]}")/common_utils.sh" 5 6COMMIT=$(get_pinned_commit halide) 7test -n "$COMMIT" 8 9# activate conda to populate CONDA_PREFIX 10test -n "$ANACONDA_PYTHON_VERSION" 11eval "$(conda shell.bash hook)" 12conda activate py_$ANACONDA_PYTHON_VERSION 13 14if [ -n "${UBUNTU_VERSION}" ];then 15 apt update 16 apt-get install -y lld liblld-15-dev libpng-dev libjpeg-dev libgl-dev \ 17 libopenblas-dev libeigen3-dev libatlas-base-dev libzstd-dev 18fi 19 20conda_install numpy scipy imageio cmake ninja 21 22git clone --depth 1 --branch release/16.x --recursive https://github.com/llvm/llvm-project.git 23cmake -DCMAKE_BUILD_TYPE=Release \ 24 -DLLVM_ENABLE_PROJECTS="clang" \ 25 -DLLVM_TARGETS_TO_BUILD="X86;NVPTX" \ 26 -DLLVM_ENABLE_TERMINFO=OFF -DLLVM_ENABLE_ASSERTIONS=ON \ 27 -DLLVM_ENABLE_EH=ON -DLLVM_ENABLE_RTTI=ON -DLLVM_BUILD_32_BITS=OFF \ 28 -S llvm-project/llvm -B llvm-build -G Ninja 29cmake --build llvm-build 30cmake --install llvm-build --prefix llvm-install 31export LLVM_ROOT=`pwd`/llvm-install 32export LLVM_CONFIG=$LLVM_ROOT/bin/llvm-config 33 34git clone https://github.com/halide/Halide.git 35pushd Halide 36git checkout ${COMMIT} && git submodule update --init --recursive 37pip_install -r requirements.txt 38cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -S . -B build 39cmake --build build 40test -e ${CONDA_PREFIX}/lib/python3 || ln -s python${ANACONDA_PYTHON_VERSION} ${CONDA_PREFIX}/lib/python3 41cmake --install build --prefix ${CONDA_PREFIX} 42chown -R jenkins ${CONDA_PREFIX} 43popd 44rm -rf Halide llvm-build llvm-project llvm-install 45 46python -c "import halide" # check for errors 47