]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/platform.h
this one should really work
[wxWidgets.git] / include / wx / platform.h
index bc61753e16c1ba76c588382b7b2fbd25188af1fd..51f7807b66bd57f010ae53e1967f9aa2ab63f1af 100644 (file)
 
 /* backwards compatible define, until configure gets updated */
 #if defined __WXMAC__
-#define __WXOSX_CARBON__
+#define __WXOSX_CARBON__ 1
 #endif
 
 #if defined(__WXOSX_CARBON__) || defined(__WXOSX_COCOA__) || defined(__WXOSX_IPHONE__) 
-#   define __WXOSX__
+#   define __WXOSX__ 1
 #endif
 
 #ifdef __WXOSX__
 /* for backwards compatibility of code (including our own) define __WXMAC__ */
 #   ifndef __WXMAC__
-#       define __WXMAC__
+#       define __WXMAC__ 1
 #   endif
 /* setup precise defines according to sdk used */
 #   include <TargetConditionals.h>
@@ -57,7 +57,7 @@
 #       if !( defined(TARGET_OS_MAC) && TARGET_OS_MAC )
 #           error "incorrect SDK for a Mac OS X build"
 #       endif
-#       define __WXOSX_MAC__
+#       define __WXOSX_MAC__ 1
 #   else
 #       error "one of __WXOSX_IPHONE__, __WXOSX_CARBON__ or __WXOSX_COCOA__ must be defined"
 #   endif
 
  */
 #if defined(__WXOSX__) || (defined(__WXCOCOA__) && (!defined(wxUSE_BASE) || !wxUSE_BASE))
-#   define __WXOSX_OR_COCOA__
+#   define __WXOSX_OR_COCOA__ 1
 #endif
 
 #ifdef __WXOSX_OR_COCOA__
 #    ifndef __WXMSW__
 #        define __WXMSW__
 #    endif
-
-#    ifndef _WIN32
-#        define _WIN32
-#    endif
-
-#    ifndef WIN32
-#        define WIN32
-#    endif
 #endif
 
 #if defined(__PALMOS__)
 #    ifndef __WXMSW__
 #        define __WXMSW__
 #    endif
-
-#    ifndef __WIN32__
-#        define __WIN32__
-#    endif
 #endif /* Win32 */
 
-#if defined(__WXMSW__) || defined(__WIN32__)
+#if defined(__WXMSW__)
 #   if !defined(__WINDOWS__)
 #       define __WINDOWS__
 #   endif
-#endif
+
+#   ifndef _WIN32
+#        define _WIN32
+#   endif
+
+#   ifndef WIN32
+#        define WIN32
+#   endif
+
+#   ifndef __WIN32__
+#        define __WIN32__
+#   endif
+#endif /* __WXMSW__ */
 
 /* detect MS SmartPhone */
 #if defined( WIN32_PLATFORM_WFSP )
    Note that it must be included before defining hardware symbols below as they
    could be already defined by configure
  */
+#include "wx/setup.h"
+
 #ifdef __GCCXML__
     /*
         we're using gccxml to create an XML representation of the entire
-        wxWidgets interface; pass it a special setup.h file
+        wxWidgets interface; use a special setup_gccxml.h file to fix some
+        of the stuff #defined by the real setup.h
     */
     #include "wx/setup_gccxml.h"
-#else
-    #include "wx/setup.h"
 #endif
 
+
 /*
    Hardware platform detection.
 
 
 #    ifdef __EMX__
 #        define OS2EMX_PLAIN_CHAR
+#    endif
+#    if defined(__INNOTEK_LIBC__)
+        /* Ensure visibility of strnlen declaration */
+#        define _GNU_SOURCE
 #    endif
 
     /* define __HPUX__ for HP-UX where standard macro is __hpux */
 /*  According to Stefan even ancient Mac compilers defined __BIG_ENDIAN__ */
 #    warning "Compiling wxMac with probably wrong endianness"
 #endif
-
+/* also the 32/64 bit universal builds must be handled accordingly */
+#ifdef __DARWIN__
+#      ifdef __LP64__
+#              undef SIZEOF_VOID_P 
+#              undef SIZEOF_LONG 
+#              undef SIZEOF_SIZE_T 
+#              define SIZEOF_VOID_P 8
+#              define SIZEOF_LONG 8
+#              define SIZEOF_SIZE_T 8
+#      else
+#              undef SIZEOF_VOID_P 
+#              undef SIZEOF_LONG 
+#              undef SIZEOF_SIZE_T 
+#              define SIZEOF_VOID_P 4
+#              define SIZEOF_LONG 4
+#              define SIZEOF_SIZE_T 4
+#      endif
+#endif
 /*
    check the consistency of the settings in setup.h: note that this must be
    done after setting wxUSE_UNICODE correctly as it is used in wx/chkconf.h