aboutsummaryrefslogtreecommitdiff
path: root/etc/environment/default-msvc.bat
blob: 64c325dd201ac2000f523746068c9a8ab7393f0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
@echo off

rem file      : etc/environment/default-msvc.bat
rem copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
rem license   : TBC; see accompanying LICENSE file

rem
rem Environment setup script for C/C++ compilation with Visual Studio 15.
rem

rem %1  - target
rem %2  - bbot executable
rem %3+ - bbot options

setlocal EnableExtensions EnableDelayedExpansion

set "MSVC=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community"

set "VCVARS32=%MSVC%\VC\Auxiliary\Build\vcvarsamd64_x86.bat"
set "VCVARS64=%MSVC%\VC\Auxiliary\Build\vcvars64.bat"

rem Based on target determine what we are building. If the target is
rem not specified, then we build 64-bit by default.
rem
rem Note that an empty argument is passed as "" (literal quotes).
rem
if "_%1_" == "_x86_64-microsoft-win32-msvc14.1_" (
  set "VCVARS=%VCVARS64%"
) else (
  if "_%1_" == "_i386-microsoft-win32-msvc14.1_" (
    set "VCVARS=%VCVARS32%"
  ) else (
    if _%1_ == _""_ (
      set "VCVARS=%VCVARS64%"
    ) else (
      echo error: unknown target %1
      goto error
    )
  )
)

call "%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