Review Request JDK-8175819: OS name and arch in JMOD files should match the values as in the bundle name
Mandy Chung
mandy.chung at oracle.com
Fri Apr 7 20:04:40 UTC 2017
> On Apr 6, 2017, at 1:09 AM, Magnus Ihse Bursie <magnus.ihse.bursie at oracle.com> wrote:
>
>
> Having though this over real hard, I'd realized I need to make a plea for sanity and consistency. I thought I should lay low in this discussion, but I can't. Choosing "amd64" as the name for the 64-bit x86 platform is really, really unfortunate and a step backwards in our effort to standardize the name of this platform.
>
I think it may be useful to see the value of `os.arch` system property on all platforms
at a glance.
32-bit 64-bit
linux i386 amd64
arm aarch64
solaris amd64
sparcv9
windows x86 amd64
macos x86_64
It's late in JDK 9. The best is to revisit OS and architecture names in JDK 10 on the
consistency and simplicity issue. In the context of JDK-8175819, these are names to
pass to jmod —-os-name —-os-arch options. The values are used at resolution time
to avoid linking modules for different target platforms into the same image.
As Mark suggests, we use the value of `os.arch` system property for JMOD file in
JDK 9 and we can change the value in JDK 10. No change to system property and
bundle names, as we said previously.
We should revisit OS and architecture names in JDK 10. I have updated
JDK-8178016 to reflect that. Are you okay with that?
Below shows the old and new values in the `release` file and the new values
are used in JMOD files.
JDK 8 JDK 9
----- -----
OS_NAME Linux linux
SunOS solaris
Darwin macos
Windows windows
OS_ARCH i386,x86 x86
i586,amd64,x86_64 amd64
sparcv9 sparcv9
arm arm
aarch64 aarch64
Updated webrev:
http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8175819/webrev.01/index.html
Mandy
More information about the jigsaw-dev
mailing list