> 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`
On Mon, 27 Mar 2023 16:00:00 GMT, Roger Riggs 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)
>
> 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`
On Mon, 27 Mar 2023 14:31:14 GMT, Andrey Turbanov wrote:
>> https://github.com/openjdk/jdk/blob/master/src/java.base/share/classes/sun/security/action/GetPropertyAction.java#L104
>
> But it's not a deprecation of the method/class. It just suppression of the
> warning.
> `GetPropertyAction.privil
On Mon, 27 Mar 2023 14:19:04 GMT, Daniel Fuchs wrote:
>> As I can see it uses deprecated `SecurityManager`, but it's not deprecated
>> itself.
>> Do I miss something? Or javac generates warning even in such cases?
>
> https://github.com/openjdk/jdk/blob/master/src/java.base/share/classes/sun/sec
On Mon, 27 Mar 2023 14:16:12 GMT, Andrey Turbanov wrote:
>> As I can see it uses deprecated `SecurityManager`, but it's not deprecated
>> itself.
>> Do I miss something? Or javac generates warning even in such cases?
>
> As I can see it uses deprecated `SecurityManager`, but it's not deprecated
On Mon, 27 Mar 2023 13:26:22 GMT, Daniel Fuchs wrote:
>> src/java.base/unix/classes/java/lang/ProcessImpl.java line 97:
>>
>>> 95: * @throw Error if the requested launch mechanism is not found or
>>> valid
>>> 96: */
>>> 97: @SuppressWarnings("removal")
>>
>> What is deprecated f
On Mon, 27 Mar 2023 14:15:59 GMT, Andrey Turbanov wrote:
>> `GetPropertyAction::privilegedGetProperty` has been marked deprecated for
>> removal because it uses the SecurityManager
>
> As I can see it uses deprecated `SecurityManager`, but it's not deprecated
> itself.
> Do I miss something? Or
On Mon, 27 Mar 2023 09:26:03 GMT, Andrey Turbanov wrote:
>> Roger Riggs has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> clarify Linux
>
> src/java.base/unix/classes/java/lang/ProcessImpl.java line 97:
>
>> 95: * @throw Error if the
On Fri, 24 Mar 2023 17:06:45 GMT, Roger Riggs 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)
>
On 25/03/2023 3:06 am, Roger Riggs wrote:
On Fri, 24 Mar 2023 16:53:05 GMT, Michael Osipov wrote:
If you are referring to "Red Hat Enterprise Linux", it'd be correct (AFAIK) to say that Red Hat identifies
"Red Hat Enterprise Linux" as an operating system, but I wouldn't go so far as to say th
> 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`
On Fri, 24 Mar 2023 17:01:37 GMT, Roger Riggs wrote:
>> That is acceptable, totally.
>
> Not the rabbit-hole I expected to go down today or for an informal comment on
> an internal API.
> I have no skin in that game.
> https://www.redhat.com/en/topics/linux/what-is-linux
Joke, they should know
On Fri, 24 Mar 2023 16:53:05 GMT, Michael Osipov wrote:
>> If you are referring to "Red Hat Enterprise Linux", it'd be correct (AFAIK)
>> to say that Red Hat identifies "Red Hat Enterprise Linux" as an operating
>> system, but I wouldn't go so far as to say that Red Hat calls "Linux" an
>> ope
On Fri, 24 Mar 2023 16:41:02 GMT, Michael Osipov wrote:
>> A bit of a quibble, several internet sources identify Linux as an operating
>> system (including Redhat).
>
> Well, no. It is just a kernel. Without a userland not an OS. That is why they
> call it GNU/Linux. Kernel + userland.
If you
On Fri, 24 Mar 2023 16:51:46 GMT, David M. Lloyd wrote:
>> Well, no. It is just a kernel. Without a userland not an OS. That is why
>> they call it GNU/Linux. Kernel + userland.
>
> If you are referring to "Red Hat Enterprise Linux", it'd be correct (AFAIK)
> to say that Red Hat identifies "Red
On Fri, 24 Mar 2023 16:08:30 GMT, Roger Riggs wrote:
>> src/java.base/share/classes/jdk/internal/util/OperatingSystem.java line 66:
>>
>>> 64:
>>> 65: /**
>>> 66: * The Linux Operating system.
>>
>> For the sake if completeness, Linux isn't an operating system, so this
>> statement i
On Fri, 24 Mar 2023 16:04:38 GMT, Roger Riggs wrote:
>> src/java.base/share/classes/jdk/internal/util/OperatingSystem.java line 81:
>>
>>> 79: */
>>> 80: AIX,
>>> 81: ;
>>
>> So no Unknown value?
>
> Correct, as explained above.
If additional OS values are needed, they can be adde
On Fri, 24 Mar 2023 00:27:42 GMT, Roger Riggs 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)
>
On Fri, 24 Mar 2023 16:03:26 GMT, Michael Osipov wrote:
>> Roger Riggs has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Rename OperatingSystem enum values to uppercase
>
> src/java.base/share/classes/jdk/internal/util/OperatingSystem.java
On Fri, 24 Mar 2023 16:02:59 GMT, Michael Osipov wrote:
>> Roger Riggs has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Rename OperatingSystem enum values to uppercase
>
> src/java.base/share/classes/jdk/internal/util/OperatingSystem.java
On Fri, 24 Mar 2023 00:27:42 GMT, Roger Riggs 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)
>
On Fri, 24 Mar 2023 00:27:42 GMT, Roger Riggs 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)
>
> 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`
On Thu, 23 Mar 2023 15:51:48 GMT, Roger Riggs wrote:
>> src/java.base/share/classes/jdk/internal/util/OperatingSystem.java line 81:
>>
>>> 79: */
>>> 80: AIX,
>>> 81: ;
>>
>> While browsing another PR I noticed that jlink also has an [OperatingSystem
>> enum](https://github.com/op
On Thu, 23 Mar 2023 15:33:59 GMT, Daniel Fuchs wrote:
>> Roger Riggs has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Group imports for jdk.internal.util
>
> src/java.base/share/classes/jdk/internal/util/OperatingSystem.java line 81:
>
>
On Thu, 23 Mar 2023 13:56:52 GMT, Roger Riggs 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)
>
> 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`
On Tue, 14 Mar 2023 18:21:33 GMT, Roger Riggs 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)
>
On Tue, 14 Mar 2023 18:21:33 GMT, Roger Riggs 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)
>
On Tue, 14 Mar 2023 18:15:46 GMT, Roger Riggs wrote:
>> src/java.base/share/classes/jdk/internal/util/OperatingSystem.java line 29:
>>
>>> 27:
>>> 28: /**
>>> 29: * Enumeration of operating system types and testing for the current OS.
>>
>> Would it be more correct to say an enumerating of op
On Tue, 14 Mar 2023 15:04:47 GMT, Alan Bateman wrote:
>> Roger Riggs has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Fix indentation and improve exception message
>
> src/java.base/share/classes/jdk/internal/util/OperatingSystem.java lin
> 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`
On Tue, 14 Mar 2023 14:14:30 GMT, Roger Riggs 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)
>
> 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`
On Fri, 10 Mar 2023 21:21:56 GMT, Roger Riggs 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)
>
On Fri, 10 Mar 2023 05:42:18 GMT, David Holmes wrote:
>> Good point. `OperatingSystemProps.java` can be a OS-specific class like:
>>
>> src/java.base/macosx/classes/jdk/internal/misc/OperatingSystemProps.java
>> linux/classes/jdk/internal/misc/OperatingSystemProps.java
>>
On Fri, 10 Mar 2023 21:21:56 GMT, Roger Riggs 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)
>
On Fri, 10 Mar 2023 21:21:56 GMT, Roger Riggs 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)
>
On Fri, 10 Mar 2023 21:21:56 GMT, Roger Riggs 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)
>
On Fri, 10 Mar 2023 14:22:17 GMT, Justin King wrote:
> > > Has this totally killed of BSD support on the JDK side? I thought
> > > building non-macOS BSD was still viable, but perhaps not - certainly not
> > > after this change.
> >
> >
> > The macOS port in 7u4 was based on a BSD port and th
> 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`
On Fri, 10 Mar 2023 14:01:04 GMT, Alan Bateman 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)
On Wed, 8 Mar 2023 19:15:16 GMT, Roger Riggs 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)
> - S
On Fri, 10 Mar 2023 02:43:15 GMT, David Holmes wrote:
>> Names and branding have changed over the years.
>> It may be prudent to remove the name entirely and stick to a 'generic'
>> identification of the OS as the Enum name.
>
> The current branding is "macOS" and we made a lot of changes in va
On Wed, 8 Mar 2023 19:15:16 GMT, Roger Riggs 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)
> - S
On Fri, 10 Mar 2023 00:08:57 GMT, Justin King wrote:
> Has this totally killed of BSD support on the JDK side? I thought building
> non-macOS BSD was still viable, but perhaps not - certainly not after this
> change.
The macOS port in 7u4 was based on a BSD port and there was a time when it wa
On Fri, 10 Mar 2023 05:09:49 GMT, Mandy Chung wrote:
>> Don't we have a conditional compilation ability with these template files
>> such that we can just generate true or false depending on the OS?
>
> Good point. `OperatingSystemProps.java` can be a OS-specific class like:
>
> src/java.base
On Fri, 10 Mar 2023 02:51:43 GMT, David Holmes wrote:
>> Using the naming from the build makes it clearer that there is a dependency
>> between the build names and those in the template.
>
> Don't we have a conditional compilation ability with these template files
> such that we can just genera
On Thu, 9 Mar 2023 17:18:35 GMT, Roger Riggs wrote:
>> That would not yield a compile time constant.
>> The TARGET_IS_XXX values must evaluate to compile time constants as
>> evaluated by javac.
>
> Using the naming from the build makes it clearer that there is a dependency
> between the build
On Thu, 9 Mar 2023 17:12:53 GMT, Roger Riggs wrote:
>>> I would argue that we should keep the replacement string matching the make
>>> variable its getting the value from. It makes it easier to trace the origin
>>> of the value.
>>
>> Then we can define a new make variable that will also allow
The message from this sender included one or more files
which could not be scanned for virus detection; do not
open these files unless you are certain of the sender's intent.
--
On Thu, 9 Mar 2023 16:12:26 GMT, Roger Riggs wrote:
On Thu, 9 Mar 2023 16:01:21 GMT, Roger Riggs wrote:
>> src/java.base/share/classes/jdk/internal/misc/OperatingSystem.java line 74:
>>
>>> 72: * The Mac OS X Operating system.
>>> 73: */
>>> 74: Mac("Mac OS X"),
>>
>> The current spelling used by Apple is "macOS", probably to align
On Thu, 9 Mar 2023 16:11:19 GMT, Roger Riggs wrote:
> > Has this totally killed of BSD support on the JDK side? I thought building
> > non-macOS BSD was still viable, but perhaps not - certainly not after this
> > change.
>
> I haven't found any use of BSD and I don't think the build supports
On Wed, 8 Mar 2023 19:15:16 GMT, Roger Riggs 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)
> - S
On Wed, 8 Mar 2023 23:23:38 GMT, Mandy Chung wrote:
> I wonder if `jdk.internal.platform` would be a better home for
> `OperatingSystem` class?
jdk.internal.platform seems to be focused on information about container
environments such as Docker.
jdk.internal.misc already contains other classe
On Thu, 9 Mar 2023 16:05:56 GMT, Roger Riggs wrote:
>> src/java.base/share/classes/jdk/internal/misc/OperatingSystem.java line 98:
>>
>>> 96: @ForceInline
>>> 97: public static boolean isLinux() {
>>> 98: return OperatingSystemProps.TARGET_OS_IS_LINUX;
>>
>> Suggestion:
>>
>>
On Thu, 9 Mar 2023 17:07:28 GMT, Mandy Chung wrote:
>> The one in the template file is independent to the build variables.
>
>> I would argue that we should keep the replacement string matching the make
>> variable its getting the value from. It makes it easier to trace the origin
>> of the val
Hi Justin,
How would I go about building one of those? Or knowing what the
dependencies are?
Thanks, Roger
On 3/8/23 11:02 PM, Justin King wrote:
Let's please not kill generic BSD support if at all possible. There is
NetBSD, OpenBSD, FreeBSD, and DragonflyBSD. I know FreeBSD and NetBSD
hav
On Thu, 9 Mar 2023 17:03:05 GMT, Mandy Chung wrote:
>> The symbol has to match the build usage of OPENJDK_TARGET_OS, not the name.
>
> The one in the template file is independent to the build variables.
> I would argue that we should keep the replacement string matching the make
> variable its
On Thu, 9 Mar 2023 16:03:37 GMT, Roger Riggs wrote:
>> I would argue that we should keep the replacement string matching the make
>> variable its getting the value from. It makes it easier to trace the origin
>> of the value.
>>
>> Using the terms `CURRENT` or `TARGET` inside the java class i
On Wed, 8 Mar 2023 23:09:06 GMT, Mandy Chung 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)
>>
On Thu, 9 Mar 2023 00:45:02 GMT, Naoto Sato 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)
>>
On Thu, 9 Mar 2023 15:24:04 GMT, Erik Joelsson wrote:
>> src/java.base/share/classes/jdk/internal/misc/OperatingSystemProps.java.template
>> line 39:
>>
>>> 37:
>>> 38: // Index/ordinal of the current OperatingSystem enum as substituted
>>> by the build
>>> 39: static final int TARGET
On Wed, 8 Mar 2023 23:11:34 GMT, Mandy Chung 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)
>>
On Wed, 8 Mar 2023 22:49:05 GMT, Raffaello Giulietti
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.
>
On Thu, 9 Mar 2023 02:51:24 GMT, David Holmes wrote:
> Has this totally killed of BSD support on the JDK side? I thought building
> non-macOS BSD was still viable, but perhaps not - certainly not after this
> change.
I haven't found any use of BSD and I don't think the build supports a BSD bui
On Wed, 8 Mar 2023 22:21:08 GMT, Mandy Chung 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)
>>
On Wed, 8 Mar 2023 19:15:16 GMT, Roger Riggs 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)
> - S
Let's please not kill generic BSD support if at all possible. There is
NetBSD, OpenBSD, FreeBSD, and DragonflyBSD. I know FreeBSD and NetBSD have
OpenJDK 19 and 17 respectively.
On Wed, Mar 8, 2023, 6:54 PM David Holmes wrote:
> On Wed, 8 Mar 2023 19:15:16 GMT, Roger Riggs wrote:
>
> > Improvem
On Wed, 8 Mar 2023 19:15:16 GMT, Roger Riggs 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)
> - S
The message from this sender included one or more files
which could not be scanned for virus detection; do not
open these files unless you are certain of the sender's intent.
--
On Wed, 8 Mar 2023 19:15:16 GMT, Roger Riggs wrote:
On Wed, 8 Mar 2023 19:15:16 GMT, Roger Riggs 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)
> - S
On Wed, 8 Mar 2023 19:15:16 GMT, Roger Riggs 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)
> - S
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 an
75 matches
Mail list logo