On Thu, 11 Feb 2021 18:34:54 GMT, Roger Riggs <[email protected]> wrote:
>> On Mac Os X, the OSVersionTest detected a difference in the version number
>> reported in the os.version property
>> and the version number provided by `sw_vers -productVersion`.
>>
>> When the java runtime is built with XCode 11.3, the os.version is reported
>> as 10.16
>> though the current version numbering is 11.nnn.
>>
>> The workaround is to derive the os.version number from the
>> ProductBuildVersion.
>> When the toolchain is updated to XCode 12.nnn it can be removed.
>> The workaround is enabled only when the environment variable
>> SYSTEM_VERSION_COMPAT is unset.
>> When the SYSTEM_VERSION_COMPAT is set in the environment the version number
>> is reported as reported by Mac OS X.
>
> Roger Riggs has updated the pull request incrementally with one additional
> commit since the last revision:
>
> Correct double-negative in 'other than 10.16'
src/java.base/macosx/native/libjava/java_props_macosx.c line 262:
> 260: // Copy out the char*
> 261: osVersionCStr = strdup([nsVerStr UTF8String]);
> 262: } else if (getenv("SYSTEM_VERSION_COMPAT") == NULL) {
If version is 10.16 and `SYSTEM_VERSION_COMPAT` is set, you will fall through
to the pre-10.9 Mac OS code fallback. Just checking to see if that's what you
intended.
-------------
PR: https://git.openjdk.java.net/jdk/pull/2530