Updating tk +quartz failed on Snow Leopard
Ken Cunningham
ken.cunningham.webuse at gmail.com
Thu Aug 25 23:51:26 PDT 2016
On 2016-08-25, at 8:20 PM, Kevin Walzer wrote:
> On 8/25/16 10:02 PM, Ryan Schmidt wrote:
>> 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.
> Can someone try something like this:
>
> #if MAC_OS_X_VERSION_MIN_REQUIRED < 1070
>
> [do someStuff:here andHere];
>
> #endif
>
> and see if it builds on 10.6? If so, send me a patch and I'll test it on 10.11 and commit if it works. I have no access to 10.6.
>
> Thanks,
> Kevin
>
> --
> Kevin Walzer
> Code by Kevin/Mobile Code by Kevin
> http://www.codebykevin.com
> http://www.wtmobilesoftware.com
>
> _______________________________________________
> macports-dev mailing list
> macports-dev at lists.macosforge.org
> https://lists.macosforge.org/mailman/listinfo/macports-dev
It looks like it works as expected. There are different ways to do the same thing, but the easy-to-read, non-underscore version of these tests uses <AvailabilityMacros.h> rather than the newer but more complicated <Availability.h>, and worked like this:
Testing out the following code on snow leopard:
------------------
#include <stdio.h>
#include <AvailabilityMacros.h>
#define MY_CURRENT_OS MAC_OS_X_VERSION_MAX_ALLOWED
int main() {
printf("%d\n", MAC_OS_X_VERSION_MAX_ALLOWED);
printf("%d\n", MAC_OS_X_VERSION_MIN_REQUIRED);
#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
printf("This code will only be seen and compiled Lion or greater!\n");
// and more
#endif
#if MAC_OS_X_VERSION_MAX_ALLOWED == 1060
printf("This code is only seen and compiled on Snow Leopard\n");
// and more
#endif
#if MAC_OS_X_VERSION_MAX_ALLOWED <= 1050
printf("This code is only seen and compiled on Leopard or Older\n");
// and more
#endif
#if MAC_OS_X_VERSION_MIN_REQUIRED < 1070
printf("This MIN version specifies code that is only seen and compiled on Snow Leopard or earlier\n");
// and more
#endif
return 0;
}
----------------------
produces the following output:
KensMacBookPro:compiler tests cunningh$ clang test.c -o test
KensMacBookPro:compiler tests cunningh$ ./test
1060
1060
This code is only seen and compiled on Snow Leopard
This MIN version specifies code that is only seen and compiled on Snow Leopard or earlier
More information about the macports-dev
mailing list