#include "wx/fontenc.h"
 #include "wx/osx/core/cfref.h"
 
+#if WORDS_BIGENDIAN
+    #define kCFStringEncodingUTF32Native kCFStringEncodingUTF32BE
+#else
+    #define kCFStringEncodingUTF32Native kCFStringEncodingUTF32LE
+#endif
+
 class WXDLLIMPEXP_FWD_BASE wxString;
 
 WXDLLIMPEXP_BASE void wxMacConvertNewlines13To10( wxString *data ) ;
 
 
 #include <CoreFoundation/CoreFoundation.h>
 
+
 void wxMacConvertNewlines13To10( char * data )
 {
     char * buf = data ;
 #if wxUSE_UNICODE_WCHAR
         // native = wchar_t 4 bytes for us
         reset( CFStringCreateWithBytes( kCFAllocatorDefault,
-            (const UInt8*)str.wc_str() , str.length()*4, kCFStringEncodingUTF32, false /* no BOM */ ) );
+            (const UInt8*)str.wc_str() , str.length()*4, kCFStringEncodingUTF32Native, false /* no BOM */ ) );
 #elif wxUSE_UNICODE_UTF8
         // native = utf8
         reset( CFStringCreateWithBytes( kCFAllocatorDefault,
     wxString result;    
 #if wxUSE_UNICODE
   #if wxUSE_UNICODE_WCHAR
-    cfencoding = kCFStringEncodingUTF32;
+    cfencoding = kCFStringEncodingUTF32Native;
   #elif wxUSE_UNICODE_UTF8
     cfencoding = kCFStringEncodingUTF8;
   #else