RFR: 8257620: Do not use objc_msgSend_stret to get macOS version

Alan Snyder javalists at cbfiddle.com
Wed Dec 2 20:45:43 UTC 2020


> On Dec 2, 2020, at 12:22 PM, Phil Race <prr at openjdk.java.net> wrote:
> 
> On Wed, 2 Dec 2020 20:04:12 GMT, Anton Kozlov <akozlov at openjdk.org> wrote:
> 
>>> Surely these days you can just call [NSProcessInfo operatingSystemVersion] directly ?
>>> If I read the doc below it is in the 10.10 SDK and later.
>>> https://developer.apple.com/documentation/foundation/nsprocessinfo/1410906-operatingsystemversion?language=occ
>> 
>> Unfortunately, no. AFAIK, the minimum target version is 10.9 https://github.com/openjdk/jdk/blob/master/make/autoconf/flags.m4#L133, so I had to keep indirection.
> 
> I wonder if we should be "upping" that to something later.
> 10.9 is over 7 years old and has been out of support for what - 4 years ?
> 
> -------------
> 
> PR: https://git.openjdk.java.net/jdk/pull/1569
> 

I know people running 10.10 and I try to keep my Java code running on 10.10, so I would suggest that.

However, my experience is that JDK 14 and later refuse to run on 10.10.

The metadata is conflicting:

The Info.plist has JVMMinimumSystemVersion 10.6.0

libjli.dylib has LC_VERSION_MIN_MACOSX 10.9

However, libjvm has LC_VERSION_MIN_MACOSX 10.13, and that is enough to prevent it from running.




More information about the build-dev mailing list