Subject: bug#27059: Can't compile master branch on Mac OS X

From: Philipp Stephani <[email-masked]>
Date: Fri, 26 May 2017 18:47:25 +0000

David Caldwell <[email-masked]> schrieb am Fr., 26. Mai 2017 um
19:23 Uhr:

> On 5/25/17 12:02 PM, Alan Third wrote:
> > On Thu, May 25, 2017 at 09:25:47AM -0700, David Caldwell wrote:
> >> That didn't work, neither did the current HEAD. The current HEAD is
> >> missing the backslash after the defined (NS_IMPL_GNUSTEP), for one
> >> thing. But testing against MAC_OS_X_VERSION_10_10 doesn't work on older
> >> OSes, it needs to be the hardcoded value '101000' (since the define
> >> didn't exist back then). To sum up, this is the patch that worked for
> me:
> >
> > Please try the attached patch. It should be a neater solution
> > (checking whether the compiler supports instancetype directly).
> >
> > If MAC_OS_X_VERSION_10_10 doesn’t exist we can define it ourselves, we
> > already do this with the other versions that have specific
> > requirements (top of nsterm.h). I evidently forgot to check whether we
> > need to define it before committing the change.
> >
> > Not that it matters now, this patch should work without it.
>
> I tried the patch out, still has problems (this output is from Mac OS
> 10.9):
>

Can you try the following patch on top:

diff --git a/src/nsterm.h b/src/nsterm.h
index f75e3759e4..77c7729c96 100644
--- a/src/nsterm.h
+++ b/src/nsterm.h
@@ -1264,6 +1264,7 @@ extern char gnustep_base_version[];  /* version
tracking */

 /* macOS 10.12 deprecates a bunch of constants. */
 #if !defined (NS_IMPL_COCOA) || \
+  ! defined MAC_OS_X_VERSION_10_12 || \
   MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_12
 #define NSEventModifierFlagCommand         NSCommandKeyMask
 #define NSEventModifierFlagControl         NSControlKeyMask