c6ae1052b4a9fbc77d1d19a9930792e7e5293f2d
[WebKit-https.git] / Tools / DumpRenderTree / config.h
1 /*
2  * Copyright (C) 2008 Nuanti Ltd.
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Library General Public
6  * License as published by the Free Software Foundation; either
7  * version 2 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Library General Public License for more details.
13  *
14  * You should have received a copy of the GNU Library General Public License
15  * along with this library; see the file COPYING.LIB.  If not, write to
16  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17  * Boston, MA 02110-1301, USA.
18  *
19  */
20
21 #define Config_H
22
23 #if defined(HAVE_CONFIG_H) && HAVE_CONFIG_H
24 #if defined(BUILDING_WITH_CMAKE)
25 #include "cmakeconfig.h"
26 #else
27 #include "autotoolsconfig.h"
28 #endif
29 #endif
30
31 #include <wtf/Platform.h>
32 #include <wtf/ExportMacros.h>
33 #if USE(JSC)
34 #include <runtime/JSExportMacros.h>
35 #endif
36
37 // On MSW, wx headers need to be included before windows.h is.
38 // The only way we can always ensure this is if we include wx here.
39 #if PLATFORM(WX)
40 #include <wx/defs.h>
41 #endif
42
43
44 #ifdef __cplusplus
45 #undef new
46 #undef delete
47 #include <wtf/FastMalloc.h>
48 #endif
49
50 #if PLATFORM(MAC)
51 #define WTF_USE_CF 1
52
53 // FIXME: These can be removed after sufficient time has passed since the removal of BUILDING_ON / TARGETING macros.
54
55 #define ERROR_PLEASE_COMPARE_WITH_MAC_OS_X_VERSION_MIN_REQUIRED 0 / 0
56 #define ERROR_PLEASE_COMPARE_WITH_MAC_OS_X_VERSION_MAX_ALLOWED 0 / 0
57
58 #define BUILDING_ON_LEOPARD ERROR_PLEASE_COMPARE_WITH_MAC_OS_X_VERSION_MIN_REQUIRED
59 #define BUILDING_ON_SNOW_LEOPARD ERROR_PLEASE_COMPARE_WITH_MAC_OS_X_VERSION_MIN_REQUIRED
60 #define BUILDING_ON_LION ERROR_PLEASE_COMPARE_WITH_MAC_OS_X_VERSION_MIN_REQUIRED
61
62 #define TARGETING_LEOPARD ERROR_PLEASE_COMPARE_WITH_MAC_OS_X_VERSION_MAX_ALLOWED
63 #define TARGETING_SNOW_LEOPARD ERROR_PLEASE_COMPARE_WITH_MAC_OS_X_VERSION_MAX_ALLOWED
64 #define TARGETING_LION ERROR_PLEASE_COMPARE_WITH_MAC_OS_X_VERSION_MAX_ALLOWED
65
66 #endif // PLATFORM(MAC)
67
68 #if OS(WINDOWS)
69 // If we don't define these, they get defined in windef.h. 
70 // We want to use std::min and std::max
71 #undef max
72 #define max max
73 #undef min
74 #define min min
75 #endif
76
77 #if PLATFORM(WIN)
78 #define WTF_USE_CF 1 
79 #if PLATFORM(WIN_CAIRO)
80 #define WTF_USE_CAIRO 1
81 #define WTF_USE_CURL 1
82 #else
83 #define WTF_USE_CG 1
84 #define WTF_USE_CFNETWORK 1
85 #endif
86
87 #undef _WIN32_WINNT
88 #define _WIN32_WINNT 0x0502
89
90 #undef WINVER
91 #define WINVER 0x0502
92
93 #undef _WINSOCKAPI_
94 #define _WINSOCKAPI_ // Prevent inclusion of winsock.h in windows.h
95 #endif  // PLATFORM(WIN)