|Subject:||Re: MAC_OS_X_VERSION macros|
|Date:||Wed, 26 Jun 2013 02:11:41 -0400|
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
#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 */
#define GS_OPENSTEP_V MAC_OS_X_VERSION_MIN_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?
On 2013-06-03, at 6:06 PM, Frank Rehwinkel <address@hidden> wrote:
|[Prev in Thread]||Current Thread||[Next in Thread]|