summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbjarni <bjarni@openttd.org>2007-11-30 13:26:24 +0000
committerbjarni <bjarni@openttd.org>2007-11-30 13:26:24 +0000
commit5fcbb8f59bdc442c09395aee62201ad905cab3b2 (patch)
tree6de5e7a7d16658fd3ee19517762435165e9c8ca9
parent4704d4619b9607662bbf3ac9c1f167956d83ec30 (diff)
downloadopenttd-5fcbb8f59bdc442c09395aee62201ad905cab3b2.tar.xz
(svn r11540) -Fix: [OSX] Don't try to compile the quartz video driver on OSX 10.3. It will fail
-rw-r--r--src/os/macosx/macos.mm9
-rw-r--r--src/video/cocoa/cocoa_v.h7
-rw-r--r--src/video/cocoa/cocoa_v.mm2
-rw-r--r--src/video/cocoa/wnd_quartz.mm4
4 files changed, 20 insertions, 2 deletions
diff --git a/src/os/macosx/macos.mm b/src/os/macosx/macos.mm
index def108059..1e97f57be 100644
--- a/src/os/macosx/macos.mm
+++ b/src/os/macosx/macos.mm
@@ -171,9 +171,18 @@ const char *GetCurrentLocale(const char *)
NSArray* languages = [defs objectForKey:@"AppleLanguages"];
NSString* preferredLang = [languages objectAtIndex:0];
/* preferredLang is either 2 or 5 characters long ("xx" or "xx_YY"). */
+
+ /* MacOS 10.3.9 can't handle encoding:NSASCIIStringEncoding
+ * we will completely disable compiling it for such old targets to avoid a warning */
+#if (MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_3)
+ /* Note: MAC_OS_X_VERSION_MAX_ALLOWED is the current OSX version/SDK by default */
if (MacOSVersionIsAtLeast(10, 4, 0)) {
[ preferredLang getCString:retbuf maxLength:32 encoding:NSASCIIStringEncoding ];
} else {
+#else
+ /* 10.3.9 needs to start the { too */
+ {
+#endif
[ preferredLang getCString:retbuf maxLength:32 ];
}
return retbuf;
diff --git a/src/video/cocoa/cocoa_v.h b/src/video/cocoa/cocoa_v.h
index 0fdc48645..2be0100df 100644
--- a/src/video/cocoa/cocoa_v.h
+++ b/src/video/cocoa/cocoa_v.h
@@ -3,6 +3,8 @@
#ifndef VIDEO_COCOA_H
#define VIDEO_COCOA_H
+#include <AvailabilityMacros.h>
+
#include "../video_driver.hpp"
class VideoDriver_Cocoa: public VideoDriver {
@@ -59,9 +61,12 @@ public:
extern CocoaSubdriver* _cocoa_subdriver;
CocoaSubdriver *QZ_CreateFullscreenSubdriver(int width, int height, int bpp);
-CocoaSubdriver *QZ_CreateWindowQuartzSubdriver(int width, int height, int bpp);
CocoaSubdriver *QZ_CreateWindowQuickdrawSubdriver(int width, int height, int bpp);
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4
+CocoaSubdriver *QZ_CreateWindowQuartzSubdriver(int width, int height, int bpp);
+#endif
+
void QZ_GameSizeChanged();
void QZ_GameLoop();
diff --git a/src/video/cocoa/cocoa_v.mm b/src/video/cocoa/cocoa_v.mm
index 24a7a4086..d039d30ad 100644
--- a/src/video/cocoa/cocoa_v.mm
+++ b/src/video/cocoa/cocoa_v.mm
@@ -232,10 +232,12 @@ static CocoaSubdriver *QZ_CreateWindowSubdriver(int width, int height, int bpp)
{
CocoaSubdriver *ret;
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4
if (MacOSVersionIsAtLeast(10, 4, 0)) {
ret = QZ_CreateWindowQuartzSubdriver(width, height, bpp);
if (ret != NULL) return ret;
}
+#endif
ret = QZ_CreateWindowQuickdrawSubdriver(width, height, bpp);
if (ret != NULL) return ret;
diff --git a/src/video/cocoa/wnd_quartz.mm b/src/video/cocoa/wnd_quartz.mm
index 9df8525f3..044f3c67f 100644
--- a/src/video/cocoa/wnd_quartz.mm
+++ b/src/video/cocoa/wnd_quartz.mm
@@ -8,9 +8,10 @@
#ifdef WITH_COCOA
-#define MAC_OS_X_VERSION_MIN_REQUIRED MAC_OS_X_VERSION_10_4
#include <AvailabilityMacros.h>
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4
+
#import <Cocoa/Cocoa.h>
#import <sys/time.h> /* gettimeofday */
#import <sys/param.h> /* for MAXPATHLEN */
@@ -801,4 +802,5 @@ CocoaSubdriver *QZ_CreateWindowQuartzSubdriver(int width, int height, int bpp)
return ret;
}
+#endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4 */
#endif /* WITH_COCOA */