Hi Andrew, thanks for doing this backport. I agree, Severin's finding needs to be added to hotspot's Unix/Posix vm.make files.
Also, the additional printing of those variables in the Unixish buildtree.make files should be added to windows' make/windows/build.make in target $(variantDir)\local.make. Other than that, I'm running a build on Windows and it looks good. Best regards Christoph > -----Original Message----- > From: jdk8u-dev <jdk8u-dev-boun...@openjdk.java.net> On Behalf Of > Severin Gehwolf > Sent: Dienstag, 26. März 2019 12:37 > To: Andrew John Hughes <gnu.and...@redhat.com>; 'jdk8u- > d...@openjdk.java.net' <jdk8u-...@openjdk.java.net>; build- > d...@openjdk.java.net > Subject: Re: [RFR] [8u] 8189761: COMPANY_NAME, IMPLEMENTOR, > BUNDLE_VENDOR, VENDOR, but no configure flag > > Hi Andrew, > > On Tue, 2019-03-26 at 01:59 +0000, Andrew John Hughes wrote: > > Bug: https://bugs.openjdk.java.net/browse/JDK-8189761 > > Webrev(s): > > https://cr.openjdk.java.net/~andrew/openjdk8/8189761/hotspot/ > > 105 CXXFLAGS/vm_version.o += ${JRE_VERSION} > 106 CXXFLAGS/arguments.o += ${VERSION_CFLAGS} > > This got me curious why VERSION_CFLAGS would only be needed for > arguments.o. This hunk: > > +ifneq ($(COMPANY_NAME),) > + # COMPANY_NAME is set to "N/A" in $AUTOCONF_DIR/version-numbers > by default, > + # but can be customized with the '--with-vendor-name' configure option. > + # Only export "VENDOR" to the build if COMPANY_NAME contains a real > value. > + # Otherwise the default value for VENDOR, which is used to set the > "java.vendor" > + # and "java.vm.vendor" properties is hard-coded into the source code (i.e. > in > + # System.c in the jdk for "vm.vendor" and vm_version.cpp in the VM for > "java.vm.vendor") > + ifneq ($(COMPANY_NAME), N/A) > + VERSION_CFLAGS += -DVENDOR='"$(COMPANY_NAME)"' > + endif > +endif > > ... mentions System.c (jdk) and vm_version.cpp (hotspot). Indeed, > java.vm.vendor doesn't change when --with-vendor-name="Red Hat Inc." is > being passed for a patched JDK 8u: > > $ ./bin/java -XshowSettings -version 2>&1 | grep vendor > java.specification.vendor = Oracle Corporation > java.vendor = Red Hat Inc. > java.vendor.url = http://java.oracle.com/ > java.vendor.url.bug = http://bugreport.sun.com/bugreport/ > java.vm.specification.vendor = Oracle Corporation > java.vm.vendor = Oracle Corporation > > That's different from a JDK 11u build: > > $ ./bin/java -XshowSettings -version 2>&1 | grep vendor > > bin/java -XshowSettings -version 2>&1 | grep vendor > java.specification.vendor = Oracle Corporation > java.vendor = Red Hat Inc. > java.vendor.url = http://java.oracle.com/ > java.vendor.url.bug = http://bugreport.java.com/bugreport/ > java.vendor.version = 18.9 > java.vm.specification.vendor = Oracle Corporation > java.vm.vendor = Red Hat Inc. > > This should fix it: > > CXXFLAGS/vm_version.o += ${JRE_VERSION} ${VERSION_CFLAGS} > > Thanks, > Severin