RFR: JDK-8199266: Update boot and build jdk requirements in configure (original) (raw)
Erik Joelsson erik.joelsson at oracle.com
Thu Mar 8 15:48:48 UTC 2018
- Previous message (by thread): RFR: JDK-8199266: Update boot and build jdk requirements in configure
- Next message (by thread): [11] RFR(M) 8197235: src/hotspot/share/jvmci/jvmciCompilerToVM.cpp takes 4 minutes to compile on windows
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hello David,
On 2018-03-07 21:35, David Holmes wrote:
On 8/03/2018 7:24 AM, Erik Joelsson wrote:
When we bumped the feature version from 10 to 11, we forgot to also update the required versions of the boot and build jdk. This is an easy mistake to do, so we should make sure it is easy and intuitive to do the update at the same time as updating the version number. We didn't forget to do it at all! It isn't yet possible to update the Boot JDK as you note below so it was left alone. First of all, this is not an attack or critique on the version change effort for 11. What I'm trying to say is that the process is too complicated and error prone, and I'm trying to make it simpler. We weren't able to update the requirement for the boot JDK version to be N-1 (i.e. 10), but in configure we need to accept both N-1 and N as valid JDK versions. When bumping the JDK feature version we do need to update the configure check to also accept JDK version N (i.e. 11 in this case). With this change, updating the complete set of acceptable boot jdk versions becomes more obvious and easier to find.
In the future, there will be two types of updates needed. When the JDK version is bumped, that number needs to be added to the set of acceptable boot JDK versions. Since that set is now explicitly listed in the same file, remembering to do so should be easy enough. When JDK N-1 is released, version N-2 needs to be removed from the set (along with making sure we switch to using the newly released JDK N-1 as boot everywhere).
As for the Build JDK ... I don't know what that is defined to be ?? The build JDK is supposed to be the same as the current JDK version. I completely understand that this is not well known. I also forgot about it during the version bump process. This is why I'm making this change to have the build JDK version automatically derived so we don't need to worry about it in the future.
/Erik
David -----
This patch changes the check for build jdk to simply compare with the current VERSIONFEATURE. This should always be the correct requirement.
The check for boot jdk is a bit more complicated. I initially thought we could calculate it automatically from VERSIONFEATURE-1, but until that version is actually released, we need to also allow VERSIONFEATURE-2. Because of this we will still require manual updating of this setting over time. So instead I moved the set of acceptable boot JDK versions to the versionnumbers file. This should make it easy enough to spot and update when changing the DEFAULTVERSIONFEATURE value. I also updated the build documentation regarding boot JDKs to explain temporary N-2 situation. While at it, I also updated the part about where to get JDK binaries since you can now download OpenJDK builds directly from jdk.java.net. Bug: https://bugs.openjdk.java.net/browse/JDK-8199266 Webrev: http://cr.openjdk.java.net/~erikj/8199266/webrev.01/ /Erik
- Previous message (by thread): RFR: JDK-8199266: Update boot and build jdk requirements in configure
- Next message (by thread): [11] RFR(M) 8197235: src/hotspot/share/jvmci/jvmciCompilerToVM.cpp takes 4 minutes to compile on windows
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]