diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2019-10-07 14:57:39 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2019-10-07 14:57:39 +0200 |
commit | 1967d67234b79ca7555a4dddda2b4761b10de250 (patch) | |
tree | e8e6a7ada4139d0c2b59e751e5bcc3d39ac7069f /etc/environments/default-msvc.bat | |
parent | b6e555163b0fed313282f193f3aa20318ad70c07 (diff) |
Add bootstrap/environment batch files for Clang targeting MSVC
Diffstat (limited to 'etc/environments/default-msvc.bat')
-rw-r--r-- | etc/environments/default-msvc.bat | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/etc/environments/default-msvc.bat b/etc/environments/default-msvc.bat new file mode 100644 index 0000000..a7d4f16 --- /dev/null +++ b/etc/environments/default-msvc.bat @@ -0,0 +1,57 @@ +@echo off + +rem file : etc/environments/default-msvc.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 Visual Studio. +rem + +rem %1 - target +rem %2 - bbot executable +rem %3+ - bbot options + +setlocal EnableExtensions EnableDelayedExpansion + +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" + +set "VCVARS32=VC\Auxiliary\Build\vcvarsamd64_x86.bat" +set "VCVARS64=VC\Auxiliary\Build\vcvars64.bat" + +rem Based on target determine what we are building. +rem +if "_%1_" == "_x86_64-microsoft-win32-msvc%MSVC_VER%_" ( + set "VCVARS=%VCVARS64%" +) else ( + if "_%1_" == "_i686-microsoft-win32-msvc%MSVC_VER%_" ( + set "VCVARS=%VCVARS32%" + ) else ( + if "_%1_" == "_i386-microsoft-win32-msvc%MSVC_VER%_" ( + set "VCVARS=%VCVARS32%" + ) else ( + echo error: unknown target %1 + goto error + ) + ) +) + +call "%MSVC%\%VCVARS%" +if errorlevel 1 goto error + +%2 %3 %4 %5 %6 %7 %8 %9 cc config.c=cl config.cxx=cl +if errorlevel 1 goto error + +goto end + +:error +@echo off +endlocal +exit /b 1 + +:end +endlocal |