@echo on

SETLOCAL ENABLEDELAYEDEXPANSION

SET PATH=C:\python36;C:\Program Files\cmake\bin;%PATH%
SET SRC=%cd%\git\SwiftShader

cd %SRC% || goto :error

REM Lower the amount of debug info, to reduce Kokoro build times.
SET LESS_DEBUG_INFO=1

cd %SRC%\build || goto :error

REM The currently used OS image comes with CMake 3.17.3. If a newer version is
REM required one can update the image (go/radial/kokoro_windows_image), or
REM uncomment the line below.
REM choco upgrade cmake -y --limit-output --no-progress
cmake --version

rem To use ninja with CMake requires VC env vars
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"
rem That batch file turned echo off, so turn it back on
@echo on

rem Note that we need to specify the C and C++ compiler only because Cygwin is in PATH and CMake finds GCC and picks that over MSVC
cmake .. ^
    -G "%CMAKE_GENERATOR_TYPE%" ^
    -DCMAKE_C_COMPILER="cl.exe" -DCMAKE_CXX_COMPILER="cl.exe" ^
    "-DREACTOR_BACKEND=%REACTOR_BACKEND%" ^
    "-DSWIFTSHADER_LLVM_VERSION=%LLVM_VERSION%" ^
    "-DREACTOR_VERIFY_LLVM_IR=1" ^
    "-DLESS_DEBUG_INFO=%LESS_DEBUG_INFO%" ^
    "-DSWIFTSHADER_BUILD_BENCHMARKS=1" || goto :error

cmake --build . --config %BUILD_TYPE%   || goto :error

REM Run the unit tests. Some must be run from project root
cd %SRC% || goto :error
SET SWIFTSHADER_DISABLE_DEBUGGER_WAIT_DIALOG=1

build\ReactorUnitTests.exe || goto :error
build\system-unittests.exe || goto :error
build\vk-unittests.exe || goto :error

REM Incrementally build and run rr::Print unit tests
cd %SRC%\build || goto :error
cmake "-DREACTOR_ENABLE_PRINT=1" .. || goto :error
cmake --build . --config %BUILD_TYPE% --target ReactorUnitTests || goto :error
ReactorUnitTests.exe --gtest_filter=ReactorUnitTests.Print* || goto :error
cmake "-DREACTOR_ENABLE_PRINT=0" .. || goto :error

REM Incrementally build with REACTOR_EMIT_ASM_FILE and run unit test
cd %SRC%\build || goto :error
cmake "-DREACTOR_EMIT_ASM_FILE=1" .. || goto :error
cmake --build . --config %BUILD_TYPE% --target ReactorUnitTests || goto :error
ReactorUnitTests.exe --gtest_filter=ReactorUnitTests.EmitAsm || goto :error
cmake "-DREACTOR_EMIT_ASM_FILE=0" .. || goto :error

REM Incrementally build with REACTOR_EMIT_DEBUG_INFO to ensure it builds
REM cd %SRC%\build || goto :error
REM cmake "-DREACTOR_EMIT_DEBUG_INFO=1" .. || goto :error
REM cmake --build . --config %BUILD_TYPE% --target ReactorUnitTests || goto :error
REM cmake "-DREACTOR_EMIT_DEBUG_INFO=0" .. || goto :error

REM Incrementally build with REACTOR_EMIT_PRINT_LOCATION to ensure it builds
REM cd %SRC%\build || goto :error
REM cmake "-DREACTOR_EMIT_PRINT_LOCATION=1" .. || goto :error
REM cmake --build . --config %BUILD_TYPE% --target ReactorUnitTests || goto :error
REM cmake "-DREACTOR_EMIT_PRINT_LOCATION=0" .. || goto :error

exit /b 0

:error
exit /b !ERRORLEVEL!
