Updating tk +quartz failed on Snow Leopard

Ryan Schmidt ryandesign at macports.org
Thu Aug 25 19:02:23 PDT 2016


On Aug 25, 2016, at 8:38 PM, Ken Cunningham <kenneth.f.cunningham at gmail.com> wrote:
> 
> I agree - preprocessor macros are the upstream way to solve this. I've seen several ports that use this method...
> 
> Ken
> 
> 
> Begin forwarded message:
> 
>> From: Ken Cunningham <ken.cunningham.webuse at gmail.com>
>> Date: August 25, 2016 11:14:37 AM PDT
>> To: Mojca Miklavec <mojca at macports.org>
>> Cc: kw at codebykevin.com
>> Subject: Re: Updating tk +quartz failed on Snow Leopard
>> 
>> also, this Apple document would appear to be of potential use:
>> 
>> <https://developer.apple.com/library/ios/documentation/DeveloperTools/Conceptual/cross_development/Using/using.html#//apple_ref/doc/uid/20002000-SW6>
>> 
>> especially down at this part:
>> 
>> Listing 3-3  Using preprocessor directives for conditional compilation
>> #ifdef __MAC_OS_X_VERSION_MAX_ALLOWED
>>     // code only compiled when targeting OS X and not iOS
>>     // note use of 1050 instead of __MAC_10_5
>> #if __MAC_OS_X_VERSION_MAX_ALLOWED >= 1050
>>     if (CGColorCreateGenericCMYK != NULL) {
>>         CGColorCreateGenericCMYK(0.1,0.5.0.0,1.0,0.1);
>>     } else {
>> #endif
>>     // code to create a color object with earlier technology
>> #if __MAC_OS_X_VERSION_MAX_ALLOWED >= 1050
>>     }
>> #endif
>> #endif
>> }
>> 
>> 
>> Ken
>> 
>> 
>> On 2016-08-25, at 10:06 AM, Ken Cunningham wrote:
>> 
>>> Perhaps these AvailabilityMacros might be of use here. I've seen them used for conditional code in other ports. This example was for 10.9, but you'd presumably use a slightly different version of the code for 10.6, or  10.7+.
>>> 
>>> /usr/include/AvailabilityMacros.h
>>> 
>>> eg: <http://stackoverflow.com/questions/20485797/what-macro-to-use-to-identify-mavericks-osx-10-9-in-c-c-code>
>>> 
>>> #if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_9
>>>  <Put your Mavericks specific code here..>
>>> #else
>>>  <Put all other code here..>
>>> #endif
>>> 
>>> 
>>> Ken

I just haven't researched whether one is supposed to use MAC_OS_X_VERSION_MIN_REQUIRED or MAC_OS_X_VERSION_MAX_ALLOWED or __MAC_OS_X_VERSION_MAX_ALLOWED or something else.




More information about the macports-dev mailing list