RFR: 8233995: java.vm.vendor (and potentially other properties/fields) not correctly set in Windows/Hotspot build of OpenJDK8
Langer, Christoph
christoph.langer at sap.com
Tue Nov 12 13:01:23 UTC 2019
Hi,
please review and approve the following change that affects Windows builds of OpenJDK 8. It is an OpenJDK8 specific fix. In later JDKs, the build system was completely changed.
Bug: https://bugs.openjdk.java.net/browse/JDK-8233995
Webrev (for hotspot): http://cr.openjdk.java.net/~clanger/webrevs/8233995.8u.0/
The problem is that for Windows builds the System property java.vm.vendor is empty. It doesn't matter whether the configure option --with-vendor-name is used or not. The problem is that the variables from configure don't get passed correctly to the hotspot build.
I fixed this by passing the needed variables in make/windows/makefiles/defs.make via MAKE_ARGS. Furthermore, in make/windows/makefiles/vm.make, the defines VENDOR, VENDOR_URL, VENDOR_URL_BUG and VENDOR_URL_VM_BUG for the C/C++ compilations will only be set if the variables have a value. This is because otherwise those would override expected default values from inside the hotspot code. With that change, the Windows build will behave more like the Unix/Linux builds do already.
BTW, the problem can be observed in the current AdoptOpenJDK builds. Amazon Corretto seems to have a workaround for this problem (a hard coded vendor string in the makefile).
Thanks
Christoph
More information about the jdk8u-dev
mailing list