aboutsummaryrefslogtreecommitdiff
path: root/etc/environments/default-msvc-14.bat
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-05-02 09:14:58 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-05-02 09:14:58 +0200
commit7882d3f3ee9d2605e53e755b19351c7097e3fb7c (patch)
treea61df9965b26a11a74bf9807e635d3d9a57f95fc /etc/environments/default-msvc-14.bat
parent971e778b1a44dcd9fd39fad009c787aa170855ea (diff)
Add VC14 bootstrap/environment batch files
Diffstat (limited to 'etc/environments/default-msvc-14.bat')
-rw-r--r--etc/environments/default-msvc-14.bat54
1 files changed, 54 insertions, 0 deletions
diff --git a/etc/environments/default-msvc-14.bat b/etc/environments/default-msvc-14.bat
new file mode 100644
index 0000000..2af8136
--- /dev/null
+++ b/etc/environments/default-msvc-14.bat
@@ -0,0 +1,54 @@
+@echo off
+
+rem file : etc/environments/default-msvc-14.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 14.
+rem
+
+rem %1 - target
+rem %2 - bbot executable
+rem %3+ - bbot options
+
+setlocal EnableExtensions EnableDelayedExpansion
+
+set "MSVC=C:\Program Files (x86)\Microsoft Visual Studio 14.0"
+set "VCVARS=%MSVC%\VC\vcvarsall.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.0_" (
+ set "VCARCH=amd64"
+) else (
+ if "_%1_" == "_i386-microsoft-win32-msvc14.0_" (
+ set "VCARCH=amd64_x86"
+ ) else (
+ if _%1_ == _""_ (
+ set "VCARCH=amd64"
+ ) else (
+ echo error: unknown target %1
+ goto error
+ )
+ )
+)
+
+call "%VCVARS%" %VCARCH%
+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