@@ -1551,8 +1551,34 @@ def doConfigure(myenv):
1551
1551
if using_asan :
1552
1552
myenv ['ENV' ]['ASAN_SYMBOLIZER_PATH' ] = llvm_symbolizer
1553
1553
1554
- # When using msvc, check for VS 2013 Update 2+ so we can use new compiler flags
1554
+ # When using msvc,
1555
+ # check for min version of VS2013 for fixes in std::list::splice
1556
+ # check for VS 2013 Update 2+ so we can use new compiler flags
1555
1557
if using_msvc ():
1558
+ haveVS2013OrLater = False
1559
+ def CheckVS2013 (context ):
1560
+ test_body = """
1561
+ #if _MSC_VER < 1800
1562
+ #error Old Version
1563
+ #endif
1564
+ int main(int argc, char* argv[]) {
1565
+ return 0;
1566
+ }
1567
+ """
1568
+ context .Message ('Checking for VS 2013 or Later... ' )
1569
+ ret = context .TryCompile (textwrap .dedent (test_body ), ".cpp" )
1570
+ context .Result (ret )
1571
+ return ret
1572
+ conf = Configure (myenv , help = False , custom_tests = {
1573
+ 'CheckVS2013' : CheckVS2013 ,
1574
+ })
1575
+ haveVS2013 = conf .CheckVS2013 ()
1576
+ conf .Finish ()
1577
+
1578
+ if not haveVS2013 :
1579
+ print ("Visual Studio 2013 RTM or later is required to compile MongoDB." )
1580
+ Exit (1 )
1581
+
1556
1582
haveVS2013Update2OrLater = False
1557
1583
def CheckVS2013Update2 (context ):
1558
1584
test_body = """
@@ -1814,6 +1840,7 @@ def doConfigure(myenv):
1814
1840
# requires ports devel/libexecinfo to be installed
1815
1841
if freebsd or openbsd :
1816
1842
if not conf .CheckLib ("execinfo" ):
1843
+ print ("Cannot find libexecinfo, please install devel/libexecinfo." )
1817
1844
Exit (1 )
1818
1845
1819
1846
# 'tcmalloc' needs to be the last library linked. Please, add new libraries before this
0 commit comments