]> git.saurik.com Git - wxWidgets.git/blame - include/wx/osx/chkconf.h
Compilation fix for gcc-4 and newer.
[wxWidgets.git] / include / wx / osx / chkconf.h
CommitLineData
5c6eb3a8 1/*
fe1a36a7 2 * Name: wx/osx/chkconf.h
5c6eb3a8
SC
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
fe1a36a7
SC
14#ifndef _WX_OSX_CHKCONF_H_
15#define _WX_OSX_CHKCONF_H_
16
5c6eb3a8
SC
17
18#if wxUSE_STACKWALKER
19 /* not supported under Mac */
20# undef wxUSE_STACKWALKER
21# define wxUSE_STACKWALKER 0
22#endif /* wxUSE_STACKWALKER */
23
fe1a36a7
SC
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_GRAPHICS_CONTEXT || ( defined( wxMAC_USE_CORE_GRAPHICS ) && !wxMAC_USE_CORE_GRAPHICS )
45# error "OS X builds use CoreGraphics in this wx version, you cannot turn back to QuickDraw completely"
46#endif
47
48/*
49 * using mixins of cocoa functionality
50 */
51
935e6c7d
SC
52#ifdef __WXOSX_COCOA__
53 #define wxOSX_USE_COCOA 1
54#else
fe1a36a7
SC
55 #define wxOSX_USE_COCOA 0
56#endif
57
935e6c7d
SC
58#ifdef __WXOSX_CARBON__
59 #define wxOSX_USE_CARBON 1
60#else
61 #define wxOSX_USE_CARBON 0
62#endif
63
fe1a36a7
SC
64/*
65 * setting flags according to the platform
66 */
67
68#ifdef __LP64__
69 #if wxOSX_USE_COCOA == 0
70 #undef wxOSX_USE_COCOA
71 #define wxOSX_USE_COCOA 1
72 #endif
73 #define wxOSX_USE_CARBON 0
74 #define wxOSX_USE_IPHONE 0
5c6eb3a8 75#else
fe1a36a7 76 #ifdef __WXOSX_IPHONE__
fe1a36a7
SC
77 #define wxOSX_USE_IPHONE 1
78 #else
79 #define wxOSX_USE_IPHONE 0
fe1a36a7 80 #endif
5c6eb3a8 81#endif
fe1a36a7
SC
82
83/*
84 * combination flags
85 */
86
87#if wxOSX_USE_COCOA || wxOSX_USE_CARBON
88 #define wxOSX_USE_COCOA_OR_CARBON 1
89#else
90 #define wxOSX_USE_COCOA_OR_CARBON 0
91#endif
92
93#if wxOSX_USE_COCOA || wxOSX_USE_IPHONE
94 #define wxOSX_USE_COCOA_OR_IPHONE 1
95#else
96 #define wxOSX_USE_COCOA_OR_IPHONE 0
97#endif
98
99#if wxOSX_USE_IPHONE
100 #include "wx/osx/iphone/chkconf.h"
101#elif wxOSX_USE_CARBON
102 #include "wx/osx/carbon/chkconf.h"
103#elif wxOSX_USE_COCOA
104 #include "wx/osx/cocoa/chkconf.h"
105#endif
106
107#endif // _WX_OSX_CHKCONF_H_