]>
Commit | Line | Data |
---|---|---|
1 | /* | |
2 | * Name: wx/msw/chkconf.h | |
3 | * Purpose: Compiler-specific configuration checking | |
4 | * Author: Julian Smart | |
5 | * Modified by: | |
6 | * Created: 01/02/97 | |
7 | * RCS-ID: $Id$ | |
8 | * Copyright: (c) Julian Smart | |
9 | * Licence: wxWindows licence | |
10 | */ | |
11 | ||
12 | /* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */ | |
13 | ||
14 | #ifndef _WX_MSW_CHKCONF_H_ | |
15 | #define _WX_MSW_CHKCONF_H_ | |
16 | ||
17 | /* | |
18 | * disable the settings which don't work for some compilers | |
19 | */ | |
20 | ||
21 | /* | |
22 | * If using PostScript-in-MSW in Univ, must enable PostScript | |
23 | */ | |
24 | ||
25 | #if defined(__WXUNIVERSAL__) && wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW && !wxUSE_POSTSCRIPT | |
26 | #undef wxUSE_POSTSCRIPT | |
27 | #define wxUSE_POSTSCRIPT 1 | |
28 | #endif | |
29 | ||
30 | #ifndef wxUSE_NORLANDER_HEADERS | |
31 | #if (defined(__WATCOMC__) && (__WATCOMC__ >= 1200)) || defined(__WINE__) || ((defined(__MINGW32__) || defined(__CYGWIN__)) && ((__GNUC__>2) ||((__GNUC__==2) && (__GNUC_MINOR__>=95)))) | |
32 | # define wxUSE_NORLANDER_HEADERS 1 | |
33 | #else | |
34 | # define wxUSE_NORLANDER_HEADERS 0 | |
35 | #endif | |
36 | #endif | |
37 | ||
38 | /* | |
39 | * All of the settings below require SEH support (__try/__catch) and can't work | |
40 | * without it. | |
41 | */ | |
42 | #if !defined(_MSC_VER) && \ | |
43 | (!defined(__BORLANDC__) || __BORLANDC__ < 0x0550) | |
44 | #undef wxUSE_ON_FATAL_EXCEPTION | |
45 | #define wxUSE_ON_FATAL_EXCEPTION 0 | |
46 | ||
47 | #undef wxUSE_CRASHREPORT | |
48 | #define wxUSE_CRASHREPORT 0 | |
49 | ||
50 | #undef wxUSE_STACKWALKER | |
51 | #define wxUSE_STACKWALKER 0 | |
52 | #endif // compiler doesn't support SEH | |
53 | ||
54 | /* | |
55 | * wxUSE_DEBUG_NEW_ALWAYS doesn't work with CodeWarrior | |
56 | */ | |
57 | ||
58 | #if defined(__MWERKS__) | |
59 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
60 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
61 | #endif | |
62 | ||
63 | #if defined(__GNUWIN32__) | |
64 | /* These don't work as expected for mingw32 and cygwin32 */ | |
65 | #undef wxUSE_MEMORY_TRACING | |
66 | #define wxUSE_MEMORY_TRACING 0 | |
67 | ||
68 | #undef wxUSE_GLOBAL_MEMORY_OPERATORS | |
69 | #define wxUSE_GLOBAL_MEMORY_OPERATORS 0 | |
70 | ||
71 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
72 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
73 | ||
74 | /* Cygwin betas don't have wcslen */ | |
75 | #if defined(__CYGWIN__) || defined(__CYGWIN32__) | |
76 | # if ! ((__GNUC__>2) ||((__GNUC__==2) && (__GNUC_MINOR__>=95))) | |
77 | # undef wxUSE_WCHAR_T | |
78 | # define wxUSE_WCHAR_T 0 | |
79 | # endif | |
80 | #endif | |
81 | ||
82 | #endif | |
83 | /* __GNUWIN32__ */ | |
84 | ||
85 | /* MFC duplicates these operators */ | |
86 | #if wxUSE_MFC | |
87 | #undef wxUSE_GLOBAL_MEMORY_OPERATORS | |
88 | #define wxUSE_GLOBAL_MEMORY_OPERATORS 0 | |
89 | ||
90 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
91 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
92 | #endif | |
93 | /* wxUSE_MFC */ | |
94 | ||
95 | #if (defined(__GNUWIN32__) && !wxUSE_NORLANDER_HEADERS) | |
96 | /* GnuWin32 doesn't have appropriate headers for e.g. IUnknown. */ | |
97 | #undef wxUSE_DRAG_AND_DROP | |
98 | #define wxUSE_DRAG_AND_DROP 0 | |
99 | #endif | |
100 | ||
101 | #if !wxUSE_OWNER_DRAWN | |
102 | #undef wxUSE_CHECKLISTBOX | |
103 | #define wxUSE_CHECKLISTBOX 0 | |
104 | #endif | |
105 | ||
106 | #if wxUSE_SPINCTRL | |
107 | # if !wxUSE_SPINBTN | |
108 | # ifdef wxABORT_ON_CONFIG_ERROR | |
109 | # error "wxSpinCtrl requires wxSpinButton on MSW" | |
110 | # else | |
111 | # undef wxUSE_SPINBTN | |
112 | # define wxUSE_SPINBTN 1 | |
113 | # endif | |
114 | # endif | |
115 | #endif | |
116 | ||
117 | #if defined(__BORLANDC__) && (__BORLANDC__ < 0x500) | |
118 | /* BC++ 4.0 can't compile JPEG library */ | |
119 | #undef wxUSE_LIBJPEG | |
120 | #define wxUSE_LIBJPEG 0 | |
121 | #endif | |
122 | ||
123 | /* wxUSE_DEBUG_NEW_ALWAYS = 1 not compatible with BC++ in DLL mode */ | |
124 | #if defined(__BORLANDC__) && (defined(WXMAKINGDLL) || defined(WXUSINGDLL)) | |
125 | #undef wxUSE_DEBUG_NEW_ALWAYS | |
126 | #define wxUSE_DEBUG_NEW_ALWAYS 0 | |
127 | #endif | |
128 | ||
129 | #if defined(__WXMSW__) && (defined(__WATCOMC__) && __WATCOMC__ < 1200) | |
130 | #undef wxUSE_WCHAR_T | |
131 | #define wxUSE_WCHAR_T 0 | |
132 | #endif | |
133 | ||
134 | /* Media not supported in eVC3 */ | |
135 | #if defined(_WIN32_WCE) | |
136 | #if (_WIN32_WCE < 400) | |
137 | #undef wxUSE_DIRECTSHOW | |
138 | #undef wxUSE_MEDIACTRL | |
139 | #define wxUSE_DIRECTSHOW 0 | |
140 | #define wxUSE_MEDIACTRL 0 | |
141 | #endif | |
142 | #endif | |
143 | ||
144 | /* Disable controls for pointing devices */ | |
145 | #if defined(__SMARTPHONE__) | |
146 | #undef wxUSE_NOTEBOOK | |
147 | #undef wxUSE_LISTBOOK | |
148 | #define wxUSE_NOTEBOOK 0 | |
149 | #define wxUSE_LISTBOOK 0 | |
150 | #endif | |
151 | ||
152 | #endif | |
153 | /* _WX_MSW_CHKCONF_H_ */ | |
154 |