Drop support for 32-bit wxOSX/Cocoa build

wxOSX doesn't build in 32 bits since quite some time and it doesn't seem
worth fixing this, so just ensure that we give a clear build error in
this case instead of multiple and less clear errors further down the
build process.

Also remove the now unnecessary checks for __LP64__ from wxOSX code.
This commit is contained in:
Vadim Zeitlin 2022-06-07 00:41:09 +02:00
parent 978a77ecb4
commit ddd6b34cf3
8 changed files with 6 additions and 45 deletions

View file

@ -52,7 +52,7 @@ Use @c configure option @c \--with-gtk=2 to use GTK 2.
wxOSX/Cocoa is the port of wxWidgets for the macOS platform. It requires
a minimum SDK 10.11, Xcode 7.2.1 or greater (runs under 10.10.5 and higher),
and fully supports amd64 as well ARM builds and deploying under 10.10.
and supports x86_64 (but not i386) and ARM builds and deploying under 10.10.
@subpage plat_osx_install "Build and Install Instructions"

View file

@ -47,12 +47,12 @@
#endif
/*
* setting flags according to the platform
* platform check
*/
#ifdef __LP64__
#if wxOSX_USE_CARBON
#error "Carbon does not support 64bit"
#ifndef __LP64__
#if wxOSX_USE_COCOA
#error "wxOSX/Cocoa requires building in 64 bits"
#endif
#endif

View file

@ -512,21 +512,7 @@ public:
- (void)sheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo;
@end
// This interface must be exported in shared 64 bit multilib build but
// using WXEXPORT with Objective C interfaces doesn't work with old (4.0.1)
// gcc when using 10.4 SDK. It does work with newer gcc even in 32 bit
// builds but seems to be unnecessary there so to avoid the expense of a
// configure check verifying if this does work or not with the current
// compiler we just only use it for 64 bit builds where this is always
// supported.
//
// NB: Currently this is the only place where we need to export an
// interface but if we need to do it elsewhere we should define a
// WXEXPORT_OBJC macro once and reuse it in all places it's needed
// instead of duplicating this preprocessor check.
#ifdef __LP64__
WXEXPORT
#endif // 64 bit builds
@interface wxNSAppController : NSObject <NSApplicationDelegate>
{
}

View file

@ -71,15 +71,9 @@
#define SIZEOF_WCHAR_T 4
#define SIZEOF_SHORT 2
#define SIZEOF_INT 4
#ifdef __LP64__
#define SIZEOF_VOID_P 8
#define SIZEOF_LONG 8
#define SIZEOF_SIZE_T 8
#else
#define SIZEOF_VOID_P 4
#define SIZEOF_LONG 4
#define SIZEOF_SIZE_T 4
#endif
#define SIZEOF_LONG_LONG 8
#define wxSIZE_T_IS_ULONG 1
#define wxWCHAR_T_IS_REAL_TYPE 1

View file

@ -828,13 +828,7 @@ void wxApp::MacCreateKeyEvent( wxKeyEvent& event, wxWindow* focus , long keymess
{
// control interferes with some built-in keys like pgdown, return etc. therefore we remove the controlKey modifier
// and look at the character after
#ifdef __LP64__
// TODO new implementation using TextInputSources
#else
UInt32 state = 0;
UInt32 keyInfo = KeyTranslate((Ptr)GetScriptManagerVariable(smKCHRCache), ( modifiers & (~(controlKey | shiftKey | optionKey))) | keycode, &state);
keychar = short(keyInfo & charCodeMask);
#endif
}
long keyval = wxMacTranslateKey(keychar, keycode) ;

View file

@ -1075,14 +1075,7 @@ bool wxNativeFontInfo::FromString(const wxString& s)
return false;
if ( d < 0 )
return false;
#ifdef __LP64__
// CGFloat is just double in this case.
m_ctSize = d;
#else // !__LP64__
if ( d > FLT_MAX )
return false;
m_ctSize = static_cast<CGFloat>(d);
#endif // __LP64__/!__LP64__
token = tokenizer.GetNextToken();
if ( !token.ToLong(&l) )

View file

@ -30,10 +30,8 @@
#include "wx/osx/private.h"
#include "wx/osx/private/available.h"
#if wxOSX_USE_COCOA && defined(__LP64__)
#if wxOSX_USE_COCOA
#define wxOSX_USE_AVKIT 1
#else
#define wxOSX_USE_AVKIT 0
#endif
//===========================================================================

View file

@ -439,11 +439,7 @@ private:
- (NSToolbarItem*) toolbar:(NSToolbar*) toolbar itemForItemIdentifier:(NSString*) itemIdentifier willBeInsertedIntoToolbar:(BOOL) flag
{
wxUnusedVar(toolbar);
#ifdef __LP64__
wxToolBarTool* tool = (wxToolBarTool*) [itemIdentifier longLongValue];
#else
wxToolBarTool* tool = (wxToolBarTool*) [itemIdentifier intValue];
#endif
if ( tool )
{
wxNSToolbarItem* item = (wxNSToolbarItem*) tool->GetToolbarItemRef();