anchor.diff:     REM     goto:eof
      REM  )
   goto:eof
  +
  +:build_spirv-tools
  +   echo.
  +   echo Building %SPIRV_TOOLS_DIR%
  +   cd  %SPIRV_TOOLS_DIR%
  +   mkdir build
  +   set SPIRV_TOOLS_BUILD_DIR=%SPIRV_TOOLS_DIR%\build
  +   cd %SPIRV_TOOLS_BUILD_DIR%
  +   cmake -G "Visual Studio 12 2013 Win64" ..
  +   msbuild ALL_BUILD.vcxproj /p:Platform=x64 /p:Configuration=Debug
  +   REM Check for existence of one lib, even though we should check for all results
  +   if not exist %SPIRV_TOOLS_BUILD_DIR%\Debug\SPIRV-Tools.lib (
  +      echo.
  +      echo spirv-tools Debug build failed!
  +      set errorCode=1
  +   )
  +   msbuild ALL_BUILD.vcxproj /p:Platform=x64 /p:Configuration=Release
  +   REM Check for existence of one lib, even though we should check for all results
  +   if not exist %SPIRV_TOOLS_BUILD_DIR%\Release\SPIRV-Tools.lib (
  +      echo.
  +      echo spirv-tools Release build failed!
  +      set errorCode=1
  +   )
  +goto:eof
  
positive.code: set BASE_DIR=%BUILD_DIR%..
  set GLSLANG_DIR=%BASE_DIR%\glslang
  set LUNARGLASS_DIR=%BASE_DIR%\LunarGLASS
  
  REM // ======== Parameter parsing ======== //
  
  
negative.code:    if %errorCode% neq 0 (goto:error)
  )
  
  if %sync-spirv-tools% equ 1 (
     rd /S /Q %SPIRV_TOOLS_DIR%
     if %errorlevel% neq 0 (goto:error)
     if not exist %SPIRV_TOOLS_DIR% (
        call:create_spirv-tools
     )
     if %errorCode% neq 0 (goto:error)
     call:update_spirv-tools
     if %errorCode% neq 0 (goto:error)
  )
  
  if %build-glslang% equ 1 (
     call:build_glslang
     if %errorCode% neq 0 (goto:error)
  