commore  1.0.6-SNAPSHOT
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Compiler.h
Go to the documentation of this file.
1 //
2 // Copyright (c) 2006-2007 Raphael David / CANTOR
3 //
4 
5 
6 #ifndef CMR_COMPILER_INCLUDED
7 #define CMR_COMPILER_INCLUDED
8 
9 #if WIN32 && !defined(commore_STATIC_BUILD)
10 // defined by cmake
11 #ifdef commore_EXPORTS
12 #define CMREXD __declspec(dllexport)
13 #else
14 #define CMREXD __declspec(dllimport)
15 #ifdef _DEBUG
16 #pragma comment(lib, "commored.lib")
17 #else
18 #pragma comment(lib, "commore.lib")
19 #endif
20 #endif
21 #else
22 #define CMREXD
23 #endif
24 
25 
26 #ifdef _MSC_VER
27 
28 #if _MSC_VER >= 1400 // this is Visual C++ 2005
29 #define stricmp _stricmp
30 #define gcvt _gcvt
31 #pragma warning(disable: 4345) // an object of POD type constructed with an initializer of the form () will be default-initialized
32 #pragma warning(disable: 4251) // needs to have dll-interface to be used by clients
33 #else // assume this is Visual C++ 6
34 #pragma warning(disable: 4100) // unreferenced formal parameter
35 #pragma warning(disable: 4710) // inline function not expanded
36 #pragma warning(disable: 4514) // unreferenced inline/local function has been removed
37 #pragma warning(disable: 4666) // 'declaration' : specialization of a function template differs
38 // from 'declaration' only by calling convention
39 #pragma warning(disable: 4710) // function not inlined
40 #pragma warning(disable: 4239) // nonstandard extension used : 'default argument' : conversion
41 #pragma warning(disable: 4786) // astring too long - truncated to 255 characters
42 #pragma warning(disable: 4097) // used as synonym for class-name
43 #pragma warning(disable: 4273)
44 #pragma warning(disable: 4251) // needs to have dll-interface to be used by clients
45 #endif
46 
47 #ifndef _DEBUG
48 #pragma warning(disable: 4702) // unreachable code caused by optimizations
49 #endif
50 
51 #elif __MINGW32__
52 // useless when -ansi is NOT specified. #define stricmp strcasecmp
53 
54 #endif // _MSC_VER
55 
56 #endif