From 49eee2959741c47472c9dbac9699f55feb1bd664 Mon Sep 17 00:00:00 2001 From: kanjitalk755 Date: Fri, 23 Apr 2021 20:47:17 +0900 Subject: [PATCH] Xcode: modified for building both x86_64 and arm64 --- BasiliskII/src/CrossPlatform/video_blit.cpp | 8 +++++++ .../BasiliskII.xcodeproj/project.pbxproj | 24 +++++++++++-------- BasiliskII/src/MacOSX/config.h | 3 +++ .../project.pbxproj | 20 +++++++++++----- .../src/MacOSX/config/config-macosx-x86_64.h | 2 ++ 5 files changed, 41 insertions(+), 16 deletions(-) diff --git a/BasiliskII/src/CrossPlatform/video_blit.cpp b/BasiliskII/src/CrossPlatform/video_blit.cpp index ebff0f09..2d7e534d 100755 --- a/BasiliskII/src/CrossPlatform/video_blit.cpp +++ b/BasiliskII/src/CrossPlatform/video_blit.cpp @@ -528,6 +528,14 @@ bool Screen_blitter_init(VisualFormat const & visual_format, bool native_byte_or // Windowed 1-bit mode uses a 1-bit X image, so there's no need for special blitting routines Screen_blit = Blit_Copy_Raw; + +#if !DIRECT_ADDRESSING + } else if (mac_depth == 16) { + + Screen_blit = Blit_Copy_Raw; + +#endif + } else { // Compute RGB shift values diff --git a/BasiliskII/src/MacOSX/BasiliskII.xcodeproj/project.pbxproj b/BasiliskII/src/MacOSX/BasiliskII.xcodeproj/project.pbxproj index 15918213..21823c98 100644 --- a/BasiliskII/src/MacOSX/BasiliskII.xcodeproj/project.pbxproj +++ b/BasiliskII/src/MacOSX/BasiliskII.xcodeproj/project.pbxproj @@ -1090,10 +1090,10 @@ GCC_ENABLE_PASCAL_STRINGS = NO; GCC_INLINES_ARE_PRIVATE_EXTERN = NO; GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( + GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)"; + "GCC_PREPROCESSOR_DEFINITIONS[arch=arm64]" = "$(inherited)"; + "GCC_PREPROCESSOR_DEFINITIONS[arch=x86_64]" = ( "$(inherited)", - ENABLE_MACOSX_ETHERHELPER, - "BINCUE=1", "USE_JIT=1", ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; @@ -1115,7 +1115,9 @@ MACOSX_DEPLOYMENT_TARGET = 10.7; ONLY_ACTIVE_ARCH = NO; OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ( + OTHER_LDFLAGS = ""; + "OTHER_LDFLAGS[arch=arm64]" = ""; + "OTHER_LDFLAGS[arch=x86_64]" = ( "-Wl,-no_pie", "-pagezero_size", 0x1000, @@ -1124,7 +1126,7 @@ PRODUCT_BUNDLE_IDENTIFIER = net.cebix.basilisk; PRODUCT_NAME = "$(TARGET_NAME)"; USE_HEADERMAP = YES; - VALID_ARCHS = x86_64; + VALID_ARCHS = "x86_64 arm64"; WARNING_CFLAGS = ""; }; name = Debug; @@ -1156,10 +1158,10 @@ GCC_ENABLE_PASCAL_STRINGS = NO; GCC_INLINES_ARE_PRIVATE_EXTERN = NO; GCC_OPTIMIZATION_LEVEL = 3; - GCC_PREPROCESSOR_DEFINITIONS = ( + GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)"; + "GCC_PREPROCESSOR_DEFINITIONS[arch=arm64]" = "$(inherited)"; + "GCC_PREPROCESSOR_DEFINITIONS[arch=x86_64]" = ( "$(inherited)", - ENABLE_MACOSX_ETHERHELPER, - "BINCUE=1", "USE_JIT=1", ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; @@ -1180,7 +1182,9 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.7; OTHER_CFLAGS = ""; - OTHER_LDFLAGS = ( + OTHER_LDFLAGS = ""; + "OTHER_LDFLAGS[arch=arm64]" = ""; + "OTHER_LDFLAGS[arch=x86_64]" = ( "-Wl,-no_pie", "-pagezero_size", 0x1000, @@ -1189,7 +1193,7 @@ PRODUCT_BUNDLE_IDENTIFIER = net.cebix.basilisk; PRODUCT_NAME = "$(TARGET_NAME)"; USE_HEADERMAP = YES; - VALID_ARCHS = x86_64; + VALID_ARCHS = "x86_64 arm64"; WARNING_CFLAGS = ""; }; name = Release; diff --git a/BasiliskII/src/MacOSX/config.h b/BasiliskII/src/MacOSX/config.h index 896af06c..d7a32d2d 100644 --- a/BasiliskII/src/MacOSX/config.h +++ b/BasiliskII/src/MacOSX/config.h @@ -824,4 +824,7 @@ #define OPTIMIZED_FLAGS #endif +#define ENABLE_MACOSX_ETHERHELPER +#define BINCUE 1 + #endif diff --git a/SheepShaver/src/MacOSX/SheepShaver_Xcode8.xcodeproj/project.pbxproj b/SheepShaver/src/MacOSX/SheepShaver_Xcode8.xcodeproj/project.pbxproj index 79681aa2..ca93f68d 100755 --- a/SheepShaver/src/MacOSX/SheepShaver_Xcode8.xcodeproj/project.pbxproj +++ b/SheepShaver/src/MacOSX/SheepShaver_Xcode8.xcodeproj/project.pbxproj @@ -1190,7 +1190,6 @@ GCC_PREPROCESSOR_DEFINITIONS = ( "DATADIR=", HAVE_CONFIG_H, - USE_JIT, "_GNU_SOURCE=1", _THREAD_SAFE, _REENTRANT, @@ -1229,7 +1228,6 @@ GCC_PREPROCESSOR_DEFINITIONS = ( "DATADIR=", HAVE_CONFIG_H, - USE_JIT, "_GNU_SOURCE=1", _THREAD_SAFE, _REENTRANT, @@ -1299,7 +1297,6 @@ ENABLE_MACOSX_ETHERHELPER, "DATADIR=", HAVE_CONFIG_H, - USE_JIT, "_GNU_SOURCE=1", _THREAD_SAFE, _REENTRANT, @@ -1328,7 +1325,13 @@ MACOSX_DEPLOYMENT_TARGET = 10.7; OTHER_CFLAGS = ""; OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; - OTHER_LDFLAGS = "-lkpx_cpu"; + OTHER_LDFLAGS = ""; + "OTHER_LDFLAGS[arch=arm64]" = "-lkpx_cpu"; + "OTHER_LDFLAGS[arch=x86_64]" = ( + "-lkpx_cpu", + "-pagezero_size", + 0x3000, + ); PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO; PRODUCT_BUNDLE_IDENTIFIER = net.cebix.sheepshaver; PRODUCT_NAME = SheepShaver; @@ -1360,7 +1363,6 @@ ENABLE_MACOSX_ETHERHELPER, "DATADIR=", HAVE_CONFIG_H, - USE_JIT, "_GNU_SOURCE=1", _THREAD_SAFE, _REENTRANT, @@ -1390,7 +1392,13 @@ MACOSX_DEPLOYMENT_TARGET = 10.7; OTHER_CFLAGS = ""; OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; - OTHER_LDFLAGS = "-lkpx_cpu"; + OTHER_LDFLAGS = ""; + "OTHER_LDFLAGS[arch=arm64]" = "-lkpx_cpu"; + "OTHER_LDFLAGS[arch=x86_64]" = ( + "-lkpx_cpu", + "-pagezero_size", + 0x3000, + ); PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO; PRODUCT_BUNDLE_IDENTIFIER = net.cebix.sheepshaver; PRODUCT_NAME = SheepShaver; diff --git a/SheepShaver/src/MacOSX/config/config-macosx-x86_64.h b/SheepShaver/src/MacOSX/config/config-macosx-x86_64.h index baf932f1..600466b5 100644 --- a/SheepShaver/src/MacOSX/config/config-macosx-x86_64.h +++ b/SheepShaver/src/MacOSX/config/config-macosx-x86_64.h @@ -523,5 +523,7 @@ /* Define to 'int' if doesn't define. */ /* #undef socklen_t */ +#define USE_JIT 1 + #endif /* CONFIG_H */