]> git.saurik.com Git - wxWidgets.git/blob - include/wx/osx/chkconf.h
Fix preprocessor definitions for wxBase build under OS X.
[wxWidgets.git] / include / wx / osx / chkconf.h
1 /*
2 * Name: wx/osx/chkconf.h
3 * Purpose: Mac-specific config settings checks
4 * Author: Vadim Zeitlin
5 * Modified by:
6 * Created: 2005-04-05 (extracted from wx/chkconf.h)
7 * RCS-ID: $Id$
8 * Copyright: (c) 2005 Vadim Zeitlin <vadim@wxwidgets.org>
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_OSX_CHKCONF_H_
15 #define _WX_OSX_CHKCONF_H_
16
17
18 #if wxUSE_STACKWALKER
19 /* not supported under Mac */
20 # undef wxUSE_STACKWALKER
21 # define wxUSE_STACKWALKER 0
22 #endif /* wxUSE_STACKWALKER */
23
24 /*
25 * disable the settings which don't work for some compilers
26 */
27
28 #if defined(__MWERKS__)
29 #undef wxUSE_DEBUG_NEW_ALWAYS
30 #define wxUSE_DEBUG_NEW_ALWAYS 0
31
32 /* DS: Fixes compilation when wxUSE_ON_FATAL_EXCEPTION is 1 */
33 #ifndef wxTYPE_SA_HANDLER
34 #define wxTYPE_SA_HANDLER int
35 #endif
36 #endif
37
38 /*
39 * check graphics context option, must be on for every os x platform
40 * we only use core graphics now on all builds, try to catch attempts
41 * to configure the build otherwise and give error messages
42 */
43
44 #if wxUSE_GUI && (!wxUSE_GRAPHICS_CONTEXT || \
45 ( defined( wxMAC_USE_CORE_GRAPHICS ) && !wxMAC_USE_CORE_GRAPHICS ))
46 # error "OS X builds use CoreGraphics in this wx version, you cannot turn back to QuickDraw completely"
47 #endif
48
49 /*
50 * using mixins of cocoa functionality
51 */
52
53 #ifdef __WXOSX_COCOA__
54 #define wxOSX_USE_COCOA 1
55 #else
56 #define wxOSX_USE_COCOA 0
57 #endif
58
59 #ifdef __WXOSX_CARBON__
60 #define wxOSX_USE_CARBON 1
61 #else
62 #define wxOSX_USE_CARBON 0
63 #endif
64
65 /*
66 * setting flags according to the platform
67 */
68
69 #ifdef __LP64__
70 #if wxOSX_USE_COCOA == 0
71 #undef wxOSX_USE_COCOA
72 #define wxOSX_USE_COCOA 1
73 #endif
74 #define wxOSX_USE_CARBON 0
75 #define wxOSX_USE_IPHONE 0
76 #else
77 #ifdef __WXOSX_IPHONE__
78 #define wxOSX_USE_IPHONE 1
79 #else
80 #define wxOSX_USE_IPHONE 0
81 #endif
82 #endif
83
84 /*
85 * combination flags
86 */
87
88 #if wxOSX_USE_COCOA || wxOSX_USE_CARBON
89 #define wxOSX_USE_COCOA_OR_CARBON 1
90 #else
91 #define wxOSX_USE_COCOA_OR_CARBON 0
92 #endif
93
94 #if wxOSX_USE_COCOA || wxOSX_USE_IPHONE
95 #define wxOSX_USE_COCOA_OR_IPHONE 1
96 #else
97 #define wxOSX_USE_COCOA_OR_IPHONE 0
98 #endif
99
100 #if wxOSX_USE_IPHONE
101 #include "wx/osx/iphone/chkconf.h"
102 #elif wxOSX_USE_CARBON
103 #include "wx/osx/carbon/chkconf.h"
104 #elif wxOSX_USE_COCOA
105 #include "wx/osx/cocoa/chkconf.h"
106 #endif
107
108 #endif // _WX_OSX_CHKCONF_H_