#!/usr/bin/env bash

set -exu

HERE="$(cd $(dirname $0) && pwd)"
. ${HERE}/buildbot_functions.sh

ROOT=`pwd`
PLATFORM=`uname`

CHECK_LIBCXX=${CHECK_LIBCXX:-0}
CHECK_LLD=${CHECK_LLD:-1}
STAGE1_CLOBBER=
STAGE2_DIR=llvm_build

CLOBBER="gn ${STAGE2_DIR}"
clobber

LLVM=$ROOT/llvm
CMAKE_COMMON_OPTIONS="-GNinja -DCMAKE_BUILD_TYPE=Release -DLLVM_PARALLEL_LINK_JOBS=20"
build_stage1_clang_at_revison

echo @@@BUILD_STEP build GN@@@
[[ -d gn ]] || git clone https://gn.googlesource.com/gn
(
  export PATH="$PATH:$(readlink -f ${STAGE1_DIR}/bin)"
  cd gn
  git checkout d3304fbba9e39a5e996cbc8c769499a1079a8743
  python build/gen.py
  ninja -C out
) || { echo @@@STEP_EXCEPTION@@@ ; exit 1 ; }

buildbot_update

(
  echo @@@BUILD_STEP sync sources from cmake@@@
  export PATH=$(readlink -f gn/out/):$PATH
  cd $LLVM/..
  $LLVM/utils/gn/build/sync_source_lists_from_cmake.py
) || echo @@@STEP_WARNINGS@@@

(
  echo @@@BUILD_STEP configure@@@
  export PATH=$(readlink -f gn/out/):$PATH
  $LLVM/utils/gn/gn.py gen ${STAGE2_DIR} \
    --list --short --overrides-only \
    --args="clang_base_path=\"$(readlink -f ${STAGE1_DIR})\""
) || echo @@@STEP_FAILURE@@@

(
  cd $STAGE2_DIR
  for TARGET in "" $(ninja -t targets | grep -o "^check-[^:]*") ; do
    echo @@@BUILD_STEP ninja $TARGET@@@
    if [[ "$TARGET" == "check-clang-tools" ]] ; then
      STEP_ERROR=@@@STEP_WARNINGS@@@
    else
      STEP_ERROR=@@@STEP_FAILURE@@@
    fi
    ninja $TARGET || echo $STEP_ERROR
  done
)
