Exiv2
config.h
1 // config.h
2 
3 #ifndef _CONFIG_H_
4 #define _CONFIG_H_
5 
7 #ifdef _MSC_VER
8 
9 #pragma warning(disable : 4996) // Disable warnings about 'deprecated' standard functions
10 #pragma warning(disable : 4251) // Disable warnings from std templates about exporting interfaces
11 
12 #endif // _MSC_VER
13 
15 #include "exv_conf.h"
17 
19 #if defined(__MINGW32__) || defined(__MINGW64__)
20 #ifndef __MING__
21 #define __MING__ 1
22 #endif
23 #ifndef __MINGW__
24 #define __MINGW__ 1
25 #endif
26 #endif
27 
28 #ifndef __CYGWIN__
29 #if defined(__CYGWIN32__) || defined(__CYGWIN64__)
30 #define __CYGWIN__ 1
31 #endif
32 #endif
33 
34 #ifndef __LITTLE_ENDIAN__
35 #if defined(__BYTE_ORDER__) && defined(__ORDER_LITTLE_ENDIAN__)
36 #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
37 #define __LITTLE_ENDIAN__ 1
38 #endif
39 #endif
40 #endif
41 
42 #ifndef __LITTLE_ENDIAN__
43 #if defined(_WIN32) || defined(__CYGWIN__)
44 #define __LITTLE_ENDIAN__ 1
45 #endif
46 #endif
47 
48 /*
49  If you're using Solaris and the Solaris Studio compiler
50  you must -library=stdcxx4 along with these inclusions below
51 */
52 #if defined(OS_SOLARIS)
53 #include <math.h>
54 #include <string.h>
55 #include <strings.h>
56 #if defined(__cplusplus)
57 #include <fstream>
58 #include <ios>
59 #endif
60 #endif
61 
64 #ifndef EXV_SEPARATOR_STR
65 #if defined(_WIN32)
66 #define EXV_SEPARATOR_STR "\\"
67 #define EXV_SEPARATOR_CHR '\\'
68 #else
69 #define EXV_SEPARATOR_STR "/"
70 #define EXV_SEPARATOR_CHR '/'
71 #endif
72 #endif
73 
75 #endif // _CONFIG_H_