anchor.diff:  GOTO start_build
   
   :start_build
  -IF NOT EXIST "%build_dir%" mkdir %build_dir%
  -pushd %build_dir%
  +IF NOT EXIST "%build_dir%" mkdir "%build_dir%"
  +pushd "%build_dir%"
   
   :: call cmake
  -echo CALL "%TOP_DIR%\ext\cmake-%DSN_TMP_CMAKE_VERSION%\bin\cmake.exe" %cdir% %buildall% -DCMAKE_INSTALL_PREFIX="%build_dir%\output" -DCMAKE_BUILD_TYPE="%build_type%" -DBOOST_INCLUDEDIR="%TOP_DIR%\ext\boost_%DSN_TMP_BOOST_VERSION%" -DBOOST_LIBRARYDIR="%TOP_DIR%\ext\boost_%DSN_TMP_BOOST_VERSION%\%DSN_TMP_BOOST_LIB%" -DDSN_GIT_SOURCE="github" -G "%DSN_TMP_CMAKE_TARGET%"
  -CALL "%TOP_DIR%\ext\cmake-%DSN_TMP_CMAKE_VERSION%\bin\cmake.exe" %cdir% %buildall% -DCMAKE_INSTALL_PREFIX="%build_dir%\output" -DCMAKE_BUILD_TYPE="%build_type%" -DBOOST_INCLUDEDIR="%TOP_DIR%\ext\boost_%DSN_TMP_BOOST_VERSION%" -DBOOST_LIBRARYDIR="%TOP_DIR%\ext\boost_%DSN_TMP_BOOST_VERSION%\%DSN_TMP_BOOST_LIB%" -DDSN_GIT_SOURCE="github" -G "%DSN_TMP_CMAKE_TARGET%"
  +echo CALL "%TOP_DIR%\ext\cmake-%DSN_TMP_CMAKE_VERSION%\bin\cmake.exe" "%cdir%" %buildall% -DCMAKE_INSTALL_PREFIX="%build_dir%\output" -DCMAKE_BUILD_TYPE="%build_type%" -DBOOST_INCLUDEDIR="%TOP_DIR%\ext\boost_%DSN_TMP_BOOST_VERSION%" -DBOOST_LIBRARYDIR="%TOP_DIR%\ext\boost_%DSN_TMP_BOOST_VERSION%\%DSN_TMP_BOOST_LIB%" -DDSN_GIT_SOURCE="github" -G "%DSN_TMP_CMAKE_TARGET%"
  +CALL "%TOP_DIR%\ext\cmake-%DSN_TMP_CMAKE_VERSION%\bin\cmake.exe" "%cdir%" %buildall% -DCMAKE_INSTALL_PREFIX="%build_dir%\output" -DCMAKE_BUILD_TYPE="%build_type%" -DBOOST_INCLUDEDIR="%TOP_DIR%\ext\boost_%DSN_TMP_BOOST_VERSION%" -DBOOST_LIBRARYDIR="%TOP_DIR%\ext\boost_%DSN_TMP_BOOST_VERSION%\%DSN_TMP_BOOST_LIB%" -DDSN_GIT_SOURCE="github" -G "%DSN_TMP_CMAKE_TARGET%"
   
   :: clean temp environment variables
   SET DSN_TMP_CMAKE_VERSION=
  
positive.code: SET bin_dir=%~dp0
  SET TOP_DIR=%bin_dir%\..\..\
  SET build_type=%1
  SET build_dir=%~f2
  SET buildall=-DBUILD_PLUGINS=FALSE
  SET cdir=%cd%
  
  IF "%3" EQU "build_plugins" (
      SET buildall=-DBUILD_PLUGINS=TRUE
      pushd %TOP_DIR%\src\plugins_ext
      git submodule init
      git submodule update
      popd 
  )
  
  CALL %bin_dir%\pre-require.cmd
  IF ERRORLEVEL 1 (
      GOTO exit
  )
  
negative.code: IF "%VisualStudioVersion%"=="15.0" GOTO find_vs2017
  IF "%VisualStudioVersion%"=="14.0" GOTO find_vs2015
  SET DSN_TMP_VS_INSTALL_DIR=
  FOR /f "usebackq tokens=1* delims=: " %%i in (`"%bin_dir%\vswhere.exe" -latest`) DO (
    IF /i "%%i"=="installationPath" set DSN_TMP_VS_INSTALL_DIR=%%j
  )
  IF DEFINED DSN_TMP_VS_INSTALL_DIR (
  