|
From: | Eric Wasylishen |
Subject: | Re: MAC_OS_X_VERSION macros |
Date: | Wed, 26 Jun 2013 02:11:41 -0400 |
Hi Frank, Thanks for bringing this up - it's indeed a nasty problem (although hopefully pretty easy to fix :) A year or two ago I was working on updating macports patches for building GNUstep on OS X 10.6/10.7, and ran in to an instance of this here: I forget the details but I think I was working around GNUstep pulling in OS X's MAC_OS_X_VERSION_MAX_ALLOWED. My take on it is, we (GNUstep) should avoid using symbols that Apple is shipping in their availability macros, since the availability macros on OS X are included in standard C headers (e.g. /usr/include/stdlib.h). I'd propose modifying this section of base/Headers/GNUstepBase/GSVersionMacros.h: /* * For MacOS-X compatibility, we define the MacOS-X version constants and * we allow MAC_OS_X_VERSION_MIN_ALLOWED or MAC_OS_X_VERSION_MAX_ALLOWED * instead of GS_OPENSTEP_V */ #ifndef MAC_OS_X_VERSION_10_0 #define MAC_OS_X_VERSION_10_0 100000 #define MAC_OS_X_VERSION_10_1 100100 #define MAC_OS_X_VERSION_10_2 100200 #define MAC_OS_X_VERSION_10_3 100300 #define MAC_OS_X_VERSION_10_4 100400 #define MAC_OS_X_VERSION_10_5 100500 #define MAC_OS_X_VERSION_10_6 100600 #endif /* MAC_OS_X_VERSION_10_0 */ #ifndef GS_OPENSTEP_V #ifdef MAC_OS_X_VERSION_MIN_ALLOWED #define GS_OPENSTEP_V MAC_OS_X_VERSION_MIN_ALLOWED #else #ifdef MAC_OS_X_VERSION_MAX_ALLOWED #define GS_OPENSTEP_V MAC_OS_X_VERSION_MAX_ALLOWED #endif /* MAC_OS_X_VERSION_MAX_ALLOWED */ #endif /* MAC_OS_X_VERSION_MIN_ALLOWED */ #endif /* GS_OPENSTEP_V */ We could rename the MAC_OS_X_VERSION_* to GS_OS_X_VERSION_*, and eliminate the section below that makes MAC_OS_X_VERSION_MIN_ALLOWED or MAC_OS_X_VERSION_MAX_ALLOWED an alias for GS_OPENSTEP_V. Maybe someone who has more background on the history of these macros in GS can chime in? Eric On 2013-06-03, at 6:06 PM, Frank Rehwinkel <address@hidden> wrote:
|
[Prev in Thread] | Current Thread | [Next in Thread] |