From cd9c05aa5e95d8b9fdc32b73367cc35a289976b7 Mon Sep 17 00:00:00 2001
From: Lars Viklund <zao@zao.se>
Date: Tue, 2 Jul 2013 01:05:51 +0200
Subject: [PATCH 2/6] Boost.Build copy-paste MSVC 11.0 to 12.0
---
tools/build/v2/tools/msvc.jam | 8 +++++++-
tools/build/v2/tools/msvc.py | 10 +++++++---
2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/tools/build/v2/tools/msvc.jam b/tools/build/v2/tools/msvc.jam
index cc04768..a1b8141 100644
a
|
b
|
local rule configure-really ( version ? : options * )
|
749 | 749 | # version from the path. |
750 | 750 | # FIXME: We currently detect both Microsoft Visual Studio 9.0 and |
751 | 751 | # 9.0express as 9.0 here. |
| 752 | if [ MATCH "(Microsoft Visual Studio 12)" : $(command) ] |
| 753 | { |
| 754 | version = 12.0 ; |
| 755 | } |
752 | 756 | if [ MATCH "(Microsoft Visual Studio 11)" : $(command) ] |
753 | 757 | { |
754 | 758 | version = 11.0 ; |
… |
… |
if [ MATCH (--debug-configuration) : [ modules.peek : ARGV ] ]
|
1385 | 1389 | |
1386 | 1390 | |
1387 | 1391 | # Known toolset versions, in order of preference. |
1388 | | .known-versions = 11.0 10.0 10.0express 9.0 9.0express 8.0 8.0express 7.1 |
| 1392 | .known-versions = 12.0 11.0 10.0 10.0express 9.0 9.0express 8.0 8.0express 7.1 |
1389 | 1393 | 7.1toolkit 7.0 6.0 ; |
1390 | 1394 | |
1391 | 1395 | # Version aliases. |
… |
… |
if [ MATCH (--debug-configuration) : [ modules.peek : ARGV ] ]
|
1396 | 1400 | .version-alias-9 = 9.0 ; |
1397 | 1401 | .version-alias-10 = 10.0 ; |
1398 | 1402 | .version-alias-11 = 11.0 ; |
| 1403 | .version-alias-12 = 12.0 ; |
1399 | 1404 | |
1400 | 1405 | # Names of registry keys containing the Visual C++ installation path (relative |
1401 | 1406 | # to "HKEY_LOCAL_MACHINE\SOFTWARE\\Microsoft"). |
… |
… |
if [ MATCH (--debug-configuration) : [ modules.peek : ARGV ] ]
|
1409 | 1414 | .version-10.0-reg = "VisualStudio\\10.0\\Setup\\VC" ; |
1410 | 1415 | .version-10.0express-reg = "VCExpress\\10.0\\Setup\\VC" ; |
1411 | 1416 | .version-11.0-reg = "VisualStudio\\11.0\\Setup\\VC" ; |
| 1417 | .version-12.0-reg = "VisualStudio\\12.0\\Setup\\VC" ; |
1412 | 1418 | |
1413 | 1419 | # Visual C++ Toolkit 2003 does not store its installation path in the registry. |
1414 | 1420 | # The environment variable 'VCToolkitInstallDir' and the default installation |
diff --git a/tools/build/v2/tools/msvc.py b/tools/build/v2/tools/msvc.py
index c6dab50..2cba16b 100644
a
|
b
|
def configure_really(version=None, options=[]):
|
645 | 645 | # version from the path. |
646 | 646 | # FIXME: We currently detect both Microsoft Visual Studio 9.0 and |
647 | 647 | # 9.0express as 9.0 here. |
648 | | if re.search("Microsoft Visual Studio 11", command): |
| 648 | if re.search("Microsoft Visual Studio 12", command): |
| 649 | version = '12.0' |
| 650 | elif re.search("Microsoft Visual Studio 11", command): |
649 | 651 | version = '11.0' |
650 | | if re.search("Microsoft Visual Studio 10", command): |
| 652 | elif re.search("Microsoft Visual Studio 10", command): |
651 | 653 | version = '10.0' |
652 | 654 | elif re.search("Microsoft Visual Studio 9", command): |
653 | 655 | version = '9.0' |
… |
… |
__cpu_type_itanium2 = ['itanium2', 'mckinley']
|
1156 | 1158 | |
1157 | 1159 | |
1158 | 1160 | # Known toolset versions, in order of preference. |
1159 | | _known_versions = ['11.0', '10.0', '10.0express', '9.0', '9.0express', '8.0', '8.0express', '7.1', '7.1toolkit', '7.0', '6.0'] |
| 1161 | _known_versions = ['12.0', '11.0', '10.0', '10.0express', '9.0', '9.0express', '8.0', '8.0express', '7.1', '7.1toolkit', '7.0', '6.0'] |
1160 | 1162 | |
1161 | 1163 | # Version aliases. |
1162 | 1164 | __version_alias_6 = '6.0' |
… |
… |
__version_alias_8 = '8.0'
|
1166 | 1168 | __version_alias_9 = '9.0' |
1167 | 1169 | __version_alias_10 = '10.0' |
1168 | 1170 | __version_alias_11 = '11.0' |
| 1171 | __version_alias_12 = '12.0' |
1169 | 1172 | |
1170 | 1173 | # Names of registry keys containing the Visual C++ installation path (relative |
1171 | 1174 | # to "HKEY_LOCAL_MACHINE\SOFTWARE\\Microsoft"). |
… |
… |
__version_9_0express_reg = "VCExpress\\9.0\\Setup\\VC"
|
1179 | 1182 | __version_10_0_reg = "VisualStudio\\10.0\\Setup\\VC" |
1180 | 1183 | __version_10_0express_reg = "VCExpress\\10.0\\Setup\\VC" |
1181 | 1184 | __version_11_0_reg = "VisualStudio\\11.0\\Setup\\VC" |
| 1185 | __version_12_0_reg = "VisualStudio\\12.0\\Setup\\VC" |
1182 | 1186 | |
1183 | 1187 | # Visual C++ Toolkit 2003 does not store its installation path in the registry. |
1184 | 1188 | # The environment variable 'VCToolkitInstallDir' and the default installation |