@echo off rem file : etc/environments/default-clang.bat rem copyright : Copyright (c) 2014-2019 Code Synthesis Ltd rem license : TBC; see accompanying LICENSE file rem rem Environment setup script for C/C++ compilation with Clang targeting rem MSVC. rem rem NOTE: don't forget to adjust the target mode selection below. rem set "C=clang" set "CXX=clang++" rem If the MSVC variable is set, then set up the environment via the MSVC rem command prompt rather than letting Clang find some default (note that rem in the latter case, clang++ should be in PATH). rem rem Note also that MSVC_VER must always be set. rem set "MSVC=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community" rem set "MSVC_VER=14.1" set "MSVC=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community" set "MSVC_VER=14.2" rem set "MSVC=" set "VCVARS32=VC\Auxiliary\Build\vcvarsamd64_x86.bat" set "VCVARS64=VC\Auxiliary\Build\vcvars64.bat" rem %1 - target rem %2 - bbot executable rem %3+ - bbot options setlocal EnableExtensions EnableDelayedExpansion rem Based on target determine what we are building. rem set "MODE=" if "_%1_" == "_x86_64-microsoft-win32-msvc%MSVC_VER%_" ( set "VCVARS=%VCVARS64%" rem set "MODE=config.cc.coptions+=-m64" ) else ( if "_%1_" == "_i686-microsoft-win32-msvc%MSVC_VER%_" ( set "VCVARS=%VCVARS32%" set "MODE=config.cc.coptions+=-m32" ) else ( if "_%1_" == "_i386-microsoft-win32-msvc%MSVC_VER%_" ( set "VCVARS=%VCVARS32%" set "MODE=config.cc.coptions+=-m32" ) else ( echo error: unknown target %1 goto error ) ) ) if not "_%MSVC%_" == "__" ( call "%MSVC%\%VCVARS%" if errorlevel 1 goto error ) %2 %3 %4 %5 %6 %7 %8 %9 cc config.c=%C% config.cxx=%CXX% %MODE% if errorlevel 1 goto error goto end :error @echo off endlocal exit /b 1 :end endlocal