Setting/overriding HOTSPOT_VERSION_STRING

Doug Simon doug.simon at oracle.com
Tue Jul 5 13:42:30 UTC 2016


Thanks Volker!

I think --with-version-opt is what I need.

-Doug

> On 05 Jul 2016, at 14:34, Volker Simonis <volker.simonis at gmail.com> wrote:
> 
> Hi Doug,
> 
> HOTSPOT_VERSION_STRING comes from VERSION_STRING:
> 
> hotspot/make/lib/CompileJvm.gmk:
> -DHOTSPOT_VERSION_STRING='"$(VERSION_STRING)"
> 
> and VERSION_STRING comes from configure. In your build directory you can do:
> 
> grep VERSION_STRING spec.gmk
> VERSION_STRING := 9-internal+0-2016-06-29-155201.d046063.jdk9-hs-comp
>    -DVERSION_STRING='"$(VERSION_STRING)"' \
> 
> You can influence this version number with various configure options:
> 
> configure --help | grep "with-version"
>  --with-version-string   Set version string [calculated]
>  --with-version-pre      Set the base part of the version 'PRE' field
>  --with-version-opt      Set version 'OPT' field (build metadata)
>  --with-version-build    Set version 'BUILD' field (build number) [not
>  --with-version-major    Set version 'MAJOR' field (first number) [current
>  --with-version-minor    Set version 'MINOR' field (second number) [current
>  --with-version-security Set version 'SECURITY' field (third number) [current
>  --with-version-patch    Set version 'PATCH' field (fourth number) [not
> 
> Regards,
> Volker
> 
> PS: the correct list for build related questions is build-dev.
> build-infra-dev was for the development of the new build system.
> 
> 
> 
> 
> 
> 
> On Tue, Jul 5, 2016 at 12:21 PM, Doug Simon <doug.simon at oracle.com> wrote:
>> Hi,
>> 
>> I’m trying to customize the value set during the JDK 9 build for the java.vm.version system property. As far as I can see, it comes from HOTSPOT_VERSION_STRING.
>> 
>> vm_version.cpp:
>> 
>> #define VM_RELEASE HOTSPOT_VERSION_STRING
>> 
>> const char* Abstract_VM_Version::vm_release() {
>> return VM_RELEASE;
>> }
>> 
>> arguments.cpp:
>> 
>> PropertyList_add(&_system_properties, new SystemProperty("java.vm.version", VM_Version::vm_release(),  false));
>> 
>> Do you know how I can set/override the value of HOTSPOT_VERSION_STRING passed to the HotSpot build? I tried setting it as an environment variable but it didn’t work:
>> 
>> dsimon at kurz ~/hs-comp> touch hotspot/src/share/vm/runtime/vm_version.cpp; env HOTSPOT_VERSION_STRING=XXXXXXXXXXXXX make CONF=release
>> Building configuration 'macosx-x86_64-normal-server-release' (matching CONF=release)
>> Building target 'default (exploded-image)' in configuration 'macosx-x86_64-normal-server-release'
>> Building JVM variant 'server' with features 'all-gcs cds closed-src commercial-features compiler1 compiler2 dtrace fprof jni-check jvmci jvmti management nmt services trace vm-structs'
>> Updating libjvm.dylib due to 1 file(s)
>> Finished building target 'default (exploded-image)' in configuration 'macosx-x86_64-normal-server-release'
>> dsimon at kurz ~/hs-comp> build/macosx-x86_64-normal-server-release/jdk/bin/java -version
>> java version "9-internal"
>> Java(TM) SE Runtime Environment (build 9-internal+0-2016-06-29-123036.dsimon.hs-comp)
>> Java HotSpot(TM) 64-Bit Server VM (build 9-internal+0-2016-06-29-123036.dsimon.hs-comp, mixed mode)
>> 
>> -Doug
>> 




More information about the build-dev mailing list