diff --git a/zorg/buildbot/builders/annotated/standalone-build.sh b/zorg/buildbot/builders/annotated/standalone-build.sh --- a/zorg/buildbot/builders/annotated/standalone-build.sh +++ b/zorg/buildbot/builders/annotated/standalone-build.sh @@ -53,7 +53,27 @@ rm -rf ${BUILD_ROOT_DIR} } +build_python_lit() { + local PYTHON_LIT_BUILD_DIR=$(build_dir python-lit) + local PYTHON_LIT_INSTALL_DIR=$(install_dir python-lit) + + build_step "Sparse checkout out python-lit" + git -C "${LLVM_ROOT}" sparse-checkout set llvm/utils/lit + + build_step "Building python-lit" + cd "${LLVM_ROOT}"/llvm/utils/lit + /usr/bin/python3 setup.py build --build-base ${PYTHON_LIT_BUILD_DIR} '--executable=/usr/bin/python3 -s' + + build_step "Installing python-lit" + rm -rf ${PYTHON_LIT_INSTALL_DIR} + /usr/bin/python3 setup.py install -O1 --skip-build --root ${PYTHON_LIT_INSTALL_DIR} + + build_step "Removing python-lit build dir" + rm -rf ${PYTHON_LIT_BUILD_DIR} +} + build_llvm() { + local PYTHON_LIT_INSTALL_DIR=$(install_dir python-lit) local LLVM_BUILD_DIR=$(build_dir llvm) local LLVM_INSTALL_DIR=$(install_dir llvm) @@ -72,6 +92,7 @@ -DLLVM_INCLUDE_BENCHMARKS=OFF \ -DLLVM_INSTALL_UTILS=ON \ -DCMAKE_INSTALL_PREFIX=${LLVM_INSTALL_DIR}/bin \ + -DLLVM_EXTERNAL_LIT=${PYTHON_LIT_INSTALL_DIR}/usr/local/bin/lit \ -DLLVM_INCLUDE_UTILS:BOOL=ON \ -DLLVM_INSTALL_UTILS:BOOL=ON \ -DLLVM_UTILS_INSTALL_DIR:PATH=${LLVM_INSTALL_DIR}/bin @@ -93,6 +114,7 @@ } build_clang() { + local PYTHON_LIT_INSTALL_DIR=$(install_dir python-lit) local LLVM_INSTALL_DIR=$(install_dir llvm) local CLANG_BUILD_DIR=$(build_dir clang) local CLANG_INSTALL_DIR=$(install_dir clang) @@ -108,6 +130,7 @@ -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \ -DCLANG_LINK_CLANG_DYLIB=ON \ -DCLANG_INCLUDE_TESTS=ON \ + -DLLVM_EXTERNAL_LIT=${PYTHON_LIT_INSTALL_DIR}/usr/local/bin/lit \ -DCMAKE_INSTALL_PREFIX=${CLANG_INSTALL_DIR} \ -DLLVM_ROOT=${LLVM_INSTALL_DIR} @@ -124,6 +147,7 @@ build_lld() { local LLVM_INSTALL_DIR=$(install_dir llvm) + local PYTHON_LIT_INSTALL_DIR=$(install_dir python-lit) local LLD_BUILD_DIR=$(build_dir lld) local LLD_INSTALL_DIR=$(install_dir lld) @@ -148,6 +172,7 @@ -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \ -DLLVM_LINK_LLVM_DYLIB=ON \ -DCLANG_INCLUDE_TESTS=ON \ + -DLLVM_EXTERNAL_LIT=${PYTHON_LIT_INSTALL_DIR}/usr/local/bin/lit \ -DCMAKE_INSTALL_PREFIX=${LLD_INSTALL_DIR} \ -DLLVM_ROOT=${LLVM_INSTALL_DIR} @@ -165,6 +190,7 @@ setup_llvm_project pre_build_cleanup +build_python_lit build_llvm build_clang build_lld