RFR: 8303485: Replacing os.name for operating system customization
Roger Riggs
rriggs at openjdk.org
Thu Mar 9 16:39:28 UTC 2023
On Wed, 8 Mar 2023 23:09:06 GMT, Mandy Chung <mchung at openjdk.org> wrote:
>> Improvements to support OS specific customization for JDK internal use:
>> - To select values and code; allowing elimination of unused code and values
>> - Optionally evaluated by build processes, compilation, or archiving (i.e. CDS)
>> - Simple API to replace adhoc comparisons with `os.name`
>> - Clear and consistent use across build, runtime, and JDK modules
>>
>> The PR includes updates within java.base to use the new API.
>
> src/java.base/share/classes/jdk/internal/misc/OperatingSystem.java line 85:
>
>> 83: ;
>> 84:
>> 85: // Cache a copy of the array for lightweight indexing
>
> This is a reference to the Enum values array (not a copy).
The implementation of OperatingSystem.values() does a clone() of the array.
It would be risky to allow the enum to change its own members.
-------------
PR: https://git.openjdk.org/jdk/pull/12931
More information about the build-dev
mailing list