vcconfig.hpp
Go to the documentation of this file.
1 /* -*- mode: c++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 
3 /*
4  Copyright (C) 2006 Eric Ehlers
5 
6  This file is part of QuantLib, a free-software/open-source library
7  for financial quantitative analysts and developers - http://quantlib.org/
8 
9  QuantLib is free software: you can redistribute it and/or modify it
10  under the terms of the QuantLib license. You should have received a
11  copy of the license along with this program; if not, please email
12  <quantlib-dev@lists.sf.net>. The license is also available online at
13  <http://quantlib.org/license.shtml>.
14 
15  This program is distributed in the hope that it will be useful, but WITHOUT
16  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17  FOR A PARTICULAR PURPOSE. See the license for more details.
18 */
19 
20 /*
21 Visual Studio configuration - format symbol COMPILER_STRING
22 for runtime version info.
23 */
24 
25 #ifndef qla_vcconfig_hpp
26 #define qla_vcconfig_hpp
27 
28 #if (_MSC_VER == 1300)
29 # define VC_VERSION "7.0"
30 #elif (_MSC_VER == 1310)
31 # define VC_VERSION "7.1"
32 #elif (_MSC_VER == 1400)
33 # define VC_VERSION "8.0"
34 #elif (_MSC_VER == 1500)
35 # define VC_VERSION "9.0"
36 #else
37 # define VC_VERSION "(version unknown)"
38 #endif
39 
40 #ifdef _MT
41 # define RUNTIME_THREAD "Multithreaded"
42 #else
43 # define RUNTIME_THREAD "Single-threaded"
44 #endif
45 
46 #ifdef _DLL
47 # define RUNTIME_LINKAGE "Dynamic"
48 #else
49 # define RUNTIME_LINKAGE "Static"
50 #endif
51 
52 #if defined(_DEBUG)
53 # define RUNTIME_CONFIG "Debug Configuration"
54 #else
55 # define RUNTIME_CONFIG "Release Configuration"
56 #endif
57 
58 #define COMPILER_STRING " - MS VC++ " VC_VERSION " - " RUNTIME_THREAD " " RUNTIME_LINKAGE " Runtime library - " RUNTIME_CONFIG
59 
60 #endif
61