wxWidgets/include/wx/osx/chkconf.h
2011-02-18 18:44:43 +00:00

111 lines
2.5 KiB
C

/*
* Name: wx/osx/chkconf.h
* Purpose: Mac-specific config settings checks
* Author: Vadim Zeitlin
* Modified by:
* Created: 2005-04-05 (extracted from wx/chkconf.h)
* RCS-ID: $Id$
* Copyright: (c) 2005 Vadim Zeitlin <vadim@wxwidgets.org>
* Licence: wxWindows licence
*/
/* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */
#ifndef _WX_OSX_CHKCONF_H_
#define _WX_OSX_CHKCONF_H_
#if wxUSE_STACKWALKER
/* not supported under Mac */
# undef wxUSE_STACKWALKER
# define wxUSE_STACKWALKER 0
#endif /* wxUSE_STACKWALKER */
/*
* disable the settings which don't work for some compilers
*/
#if defined(__MWERKS__)
#undef wxUSE_DEBUG_NEW_ALWAYS
#define wxUSE_DEBUG_NEW_ALWAYS 0
/* DS: Fixes compilation when wxUSE_ON_FATAL_EXCEPTION is 1 */
#ifndef wxTYPE_SA_HANDLER
#define wxTYPE_SA_HANDLER int
#endif
#endif
/*
* check graphics context option, must be on for every os x platform
* we only use core graphics now on all builds, try to catch attempts
* to configure the build otherwise and give error messages
*/
#if wxUSE_GUI && (!wxUSE_GRAPHICS_CONTEXT || \
( defined( wxMAC_USE_CORE_GRAPHICS ) && !wxMAC_USE_CORE_GRAPHICS ))
# error "OS X builds use CoreGraphics in this wx version, you cannot turn back to QuickDraw completely"
#endif
/*
* using mixins of cocoa functionality
*/
#ifdef __WXOSX_COCOA__
#define wxOSX_USE_COCOA 1
#else
#define wxOSX_USE_COCOA 0
#endif
#ifdef __WXOSX_CARBON__
#define wxOSX_USE_CARBON 1
#else
#define wxOSX_USE_CARBON 0
#endif
/*
* setting flags according to the platform
*/
#ifdef __LP64__
#if wxOSX_USE_COCOA == 0
#undef wxOSX_USE_COCOA
#define wxOSX_USE_COCOA 1
#endif
#if wxOSX_USE_CARBON
#error "Carbon does not support 64bit"
#endif
#define wxOSX_USE_IPHONE 0
#else
#ifdef __WXOSX_IPHONE__
#define wxOSX_USE_IPHONE 1
#else
#define wxOSX_USE_IPHONE 0
#endif
#endif
/*
* combination flags
*/
#if wxOSX_USE_COCOA || wxOSX_USE_CARBON
#define wxOSX_USE_COCOA_OR_CARBON 1
#else
#define wxOSX_USE_COCOA_OR_CARBON 0
#endif
#if wxOSX_USE_COCOA || wxOSX_USE_IPHONE
#define wxOSX_USE_COCOA_OR_IPHONE 1
#else
#define wxOSX_USE_COCOA_OR_IPHONE 0
#endif
#if wxOSX_USE_IPHONE
#include "wx/osx/iphone/chkconf.h"
#elif wxOSX_USE_CARBON
#include "wx/osx/carbon/chkconf.h"
#elif wxOSX_USE_COCOA
#include "wx/osx/cocoa/chkconf.h"
#endif
#endif // _WX_OSX_CHKCONF_H_