include(ExternalProject)
find_package(Git REQUIRED)
include(GNUInstallDirs)

set(LLVM_BINDIR ${CMAKE_BINARY_DIR}/cdt-llvm)
ExternalProject_Add(
  CDTTools
  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} -DVERSION_FULL=${VERSION_FULL} -DLLVM_SRCDIR=${CMAKE_SOURCE_DIR}/cdt-llvm -DLLVM_BINDIR=${LLVM_BINDIR} -DLLVM_DIR=${LLVM_BINDIR}/lib/cmake/llvm -DCMAKE_INSTALL_BINDIR=${CMAKE_INSTALL_BINDIR} -DVERSION_MAJOR=${VERSION_MAJOR} -DVERSION_MINOR=${VERSION_MINOR} -DVERSION_PATCH=${VERSION_PATCH} -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}

  SOURCE_DIR "${CMAKE_SOURCE_DIR}/tools"
  BINARY_DIR "${CMAKE_BINARY_DIR}/tools"
  UPDATE_COMMAND ""
  PATCH_COMMAND  ""
  TEST_COMMAND   ""
  INSTALL_COMMAND ""
  BUILD_ALWAYS 1
  DEPENDS CDTClang
)

ExternalProject_Add(
  toolchain-tester
  SOURCE_DIR "${CMAKE_SOURCE_DIR}/tools/toolchain-tester"
  BINARY_DIR "${CMAKE_BINARY_DIR}/tools/toolchain-tester"
  UPDATE_COMMAND ""
  PATCH_COMMAND  ""
  TEST_COMMAND   ""
  INSTALL_COMMAND ""
  BUILD_ALWAYS 1
)
