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 @@ -25,8 +25,30 @@ INSTALL_ROOT_DIR=${BUILDBOT_ROOT}/install BUILD_ROOT_DIR=${BUILDBOT_ROOT}/build -# Set CMAKE_TRACE=--trace to toggle on tracing of cmake calls to stderr -CMAKE_TRACE=${CMAKE_TRACE:-} +# Enable CMake tracing during configure per component +CMAKE_TRACE_CONFIGURE_LLVM=${CMAKE_TRACE_CONFIGURE_LLVM:-} +CMAKE_TRACE_CONFIGURE_CLANG=${CMAKE_TRACE_CONFIGURE_CLANG:-} +CMAKE_TRACE_CONFIGURE_LLD=${CMAKE_TRACE_CONFIGURE_LLD:-} + +# Turn CMake's verbose mode for build, check and install steps per component +CMAKE_VERBOSE_LLVM=${CMAKE_VERBOSE_LLVM:-} +CMAKE_VERBOSE_CLANG=${CMAKE_VERBOSE_CLANG:-} +CMAKE_VERBOSE_LLD=${CMAKE_VERBOSE_LLD:-} + +# Enable CMake verbose-mode during building +CMAKE_VERBOSE_BUILD_LLVM=${CMAKE_VERBOSE_BUILD_LLVM:-${CMAKE_VERBOSE_LLVM}} +CMAKE_VERBOSE_BUILD_CLANG=${CMAKE_VERBOSE_BUILD_CLANG:-${CMAKE_VERBOSE_CLANG}} +CMAKE_VERBOSE_BUILD_LLD=${CMAKE_VERBOSE_BUILD_LLD:-${CMAKE_VERBOSE_LLD}} + +# Enable CMake verbose-mode during checking +CMAKE_VERBOSE_CHECK_LLVM=${CMAKE_VERBOSE_CHECK_LLVM:-${CMAKE_VERBOSE_LLVM}} +CMAKE_VERBOSE_CHECK_CLANG=${CMAKE_VERBOSE_CHECK_CLANG:-${CMAKE_VERBOSE_CLANG}} +CMAKE_VERBOSE_CHECK_LLD=${CMAKE_VERBOSE_CHECK_LLD:-${CMAKE_VERBOSE_LLD}} + +# Enable CMake verbose-mode during installation +CMAKE_VERBOSE_INSTALL_LLVM=${CMAKE_VERBOSE_INSTALL_LLVM:-${CMAKE_VERBOSE_LLVM}} +CMAKE_VERBOSE_INSTALL_CLANG=${CMAKE_VERBOSE_INSTALL_CLANG:-${CMAKE_VERBOSE_CLANG}} +CMAKE_VERBOSE_INSTALL_LLD=${CMAKE_VERBOSE_INSTALL_LLD:-${CMAKE_VERBOSE_LLD}} install_dir() { echo ${INSTALL_ROOT_DIR}/$1 @@ -99,7 +121,7 @@ build_step "Configuring llvm" - cmake ${CMAKE_TRACE} \ + cmake ${CMAKE_TRACE_CONFIGURE_LLVM} \ -S ${LLVM_ROOT}/llvm \ -B ${LLVM_BUILD_DIR} \ -G Ninja \ @@ -116,14 +138,14 @@ -DLLVM_CCACHE_BUILD=ON build_step "Building llvm" - cmake ${CMAKE_TRACE} --build ${LLVM_BUILD_DIR} + cmake ${CMAKE_VERBOSE_BUILD_LLVM} --build ${LLVM_BUILD_DIR} build_step "Testing llvm" - LD_LIBRARY_PATH="${LLVM_INSTALL_DIR}/lib64" cmake ${CMAKE_TRACE} --build ${LLVM_BUILD_DIR} --target check-all + LD_LIBRARY_PATH="${LLVM_INSTALL_DIR}/lib64" cmake ${CMAKE_VERBOSE_CHECK_LLVM} --build ${LLVM_BUILD_DIR} --target check-all build_step "Installing llvm" rm -rf ${LLVM_INSTALL_DIR} - cmake ${CMAKE_TRACE} --install ${LLVM_BUILD_DIR} + cmake ${CMAKE_VERBOSE_INSTALL_LLVM} --install ${LLVM_BUILD_DIR} # This is meant to extinguish any dependency on files being taken # from the llvm build dir when building clang. @@ -141,7 +163,7 @@ git -C "${LLVM_ROOT}" sparse-checkout set clang cmake build_step "Configuring clang" - cmake ${CMAKE_TRACE} \ + cmake ${CMAKE_TRACE_CONFIGURE_CLANG} \ -S ${LLVM_ROOT}/clang \ -B ${CLANG_BUILD_DIR} \ -G Ninja \ @@ -156,11 +178,13 @@ -DLLVM_CCACHE_BUILD=ON build_step "Building clang" - LD_LIBRARY_PATH="${LLVM_INSTALL_DIR}/lib64" cmake ${CMAKE_TRACE} --build ${CLANG_BUILD_DIR} + LD_LIBRARY_PATH="${LLVM_INSTALL_DIR}/lib64" cmake ${CMAKE_VERBOSE_BUILD_CLANG} --build ${CLANG_BUILD_DIR} + + # TODO(kwk): Add Clang check build_step "Installing clang" rm -rf ${CLANG_INSTALL_DIR} - cmake ${CMAKE_TRACE} --install ${CLANG_BUILD_DIR} + cmake ${CMAKE_VERBOSE_INSTALL_CLANG} --install ${CLANG_BUILD_DIR} build_step "Removing clang build dir" rm -rf ${CLANG_BUILD_DIR} @@ -186,7 +210,7 @@ rm -rf ${LLD_BUILD_DIR} build_step "Configuring lld" - cmake ${CMAKE_TRACE} \ + cmake ${CMAKE_TRACE_CONFIGURE_LLD} \ -S ${LLVM_ROOT}/lld \ -B ${LLD_BUILD_DIR} \ -G Ninja \ @@ -199,14 +223,14 @@ -DLLVM_EXTERNAL_LIT=${PYTHON_LIT_INSTALL_DIR}/usr/local/bin/lit build_step "Building lld" - LD_LIBRARY_PATH="${LLVM_INSTALL_DIR}/lib64" cmake ${CMAKE_TRACE} --build ${LLD_BUILD_DIR} + LD_LIBRARY_PATH="${LLVM_INSTALL_DIR}/lib64" cmake ${CMAKE_VERBOSE_BUILD_LLD} --build ${LLD_BUILD_DIR} build_step "Testing lld" - LD_LIBRARY_PATH="${LLVM_INSTALL_DIR}/lib64" cmake ${CMAKE_TRACE} --build ${LLD_BUILD_DIR} --target check-lld + LD_LIBRARY_PATH="${LLVM_INSTALL_DIR}/lib64" cmake ${CMAKE_VERBOSE_CHECK_LLD} --build ${LLD_BUILD_DIR} --target check-lld build_step "Installing lld" rm -rf ${LLD_INSTALL_DIR} - cmake ${CMAKE_TRACE} --install ${LLD_BUILD_DIR} + cmake ${CMAKE_VERBOSE_INSTALL_LLD} --install ${LLD_BUILD_DIR} build_step "Removing lld build dir" rm -rf ${LLD_BUILD_DIR}