--- old/common/nb_native/nbproject/configurations.xml 2015-06-16 15:02:36.194324702 -0700 +++ new/common/nb_native/nbproject/configurations.xml 2015-06-16 15:02:35.204061130 -0700 @@ -1,7 +1,7 @@ - + - + @@ -1903,8 +1903,9 @@ - LOCAL_SOURCES default + false + false @@ -4526,10 +4527,6 @@ ex="false" tool="1" flavor2="0"> - - - - - + /usr/X11/include @@ -4821,7 +4818,7 @@ - + LINUX @@ -4832,7 +4829,7 @@ - + ../../hotspot/src/os/posix/launcher @@ -4870,7 +4867,7 @@ - + ../../hotspot/agent/src/os/linux @@ -4885,7 +4882,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -4907,7 +4904,7 @@ - + HOTSPOT_BUILD_TARGET="target" @@ -4921,7 +4918,7 @@ - + ../../hotspot/src/os_cpu/linux_x86/vm @@ -4940,7 +4937,7 @@ - + THIS_FILE="ArrayReferenceImpl.c" @@ -4960,7 +4957,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -4994,7 +4991,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5020,7 +5017,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5058,7 +5055,7 @@ - + ../../jdk/src/share/demo/jvmti/heapTracker @@ -5068,7 +5065,7 @@ - + ../../jdk/src/share/demo/jvmti/compiledMethodLoad @@ -5080,7 +5077,7 @@ - + ../../jdk/src/share/demo/jvmti/gctest @@ -5092,7 +5089,7 @@ - + ../../jdk/src/share/demo/jvmti/heapTracker @@ -5105,7 +5102,7 @@ - + ../../jdk/src/share/demo/jvmti/heapViewer @@ -5117,7 +5114,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/gensrc_headers @@ -5132,7 +5129,7 @@ - + ../../jdk/src/share/demo/jvmti/hprof @@ -5147,7 +5144,7 @@ - + ../../jdk/src/share/demo/jvmti/minst @@ -5160,7 +5157,7 @@ - + ../../jdk/src/share/demo/jvmti/mtrace @@ -5173,7 +5170,7 @@ - + ../../jdk/src/share/demo/jvmti/versionCheck @@ -5185,7 +5182,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5216,7 +5213,7 @@ - + THIS_FILE="DirectAudioDevice.c" @@ -5228,7 +5225,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5264,7 +5261,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5290,7 +5287,7 @@ - + ARCH="amd64" @@ -5307,7 +5304,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5339,7 +5336,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5355,7 +5352,7 @@ - + ../../jdk/src/share/native/java/lang/fdlibm/include @@ -5363,7 +5360,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -5389,7 +5386,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -5415,7 +5412,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5437,7 +5434,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5470,7 +5467,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5503,14 +5500,14 @@ - + THIS_FILE="AtomicLong.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5542,14 +5539,14 @@ - + THIS_FILE="compress.c" - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -5576,7 +5573,7 @@ - + THIS_FILE="debug_assert.c" @@ -5597,7 +5594,7 @@ - + ARCH="amd64" @@ -5613,7 +5610,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5650,7 +5647,7 @@ - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -5678,14 +5675,14 @@ - + THIS_FILE="img_colors.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5721,7 +5718,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5758,14 +5755,14 @@ - + THIS_FILE="imageioJPEG.c" - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -5793,7 +5790,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5812,7 +5809,7 @@ - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -5840,7 +5837,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5878,7 +5875,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5923,7 +5920,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -5949,7 +5946,7 @@ - + ../../jdk/src/share/native/sun/java2d @@ -5958,7 +5955,7 @@ - + ../../jdk/src/share/native/sun/awt @@ -5988,7 +5985,7 @@ - + ../../jdk/src/share/native/sun/awt/debug @@ -6019,7 +6016,7 @@ - + ../../jdk/src/share/native/sun/awt @@ -6049,7 +6046,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6077,7 +6074,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6120,7 +6117,7 @@ - + ../../jdk/make @@ -6130,7 +6127,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6173,7 +6170,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6209,7 +6206,7 @@ - + ../../jdk/src/share/native/sun/security/ec @@ -6222,7 +6219,7 @@ - + ../../jdk/src/share/native/sun/security/jgss/wrapper @@ -6234,7 +6231,7 @@ - + ../../jdk/src/share/native/sun/security/pkcs11 @@ -6248,7 +6245,7 @@ - + ../../jdk/src/share/native/sun/security/smartcardio @@ -6262,7 +6259,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6290,7 +6287,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6319,7 +6316,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6351,7 +6348,7 @@ - + ARCH="amd64" @@ -6368,7 +6365,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6392,7 +6389,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6407,7 +6404,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6428,7 +6425,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6449,14 +6446,14 @@ - + THIS_FILE="LinuxOperatingSystem.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6469,7 +6466,7 @@ - + ../../jdk/src/share/native/sun/management @@ -6477,7 +6474,7 @@ - + ../../jdk/src/share/native/com/sun/media/sound @@ -6496,7 +6493,7 @@ - + ../../jdk/make @@ -6506,7 +6503,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6539,7 +6536,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6555,7 +6552,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -6580,7 +6577,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -6606,7 +6603,7 @@ - + ../../jdk/src/share/native/java/net @@ -6621,7 +6618,7 @@ - + ../../jdk/src/share/native/sun/nio/ch @@ -6635,7 +6632,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -6661,14 +6658,14 @@ - + THIS_FILE="splashscreen_sys.c" - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -6695,7 +6692,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6724,7 +6721,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6762,14 +6759,14 @@ - + THIS_FILE="X11FontScaler_md.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6787,7 +6784,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6809,28 +6806,28 @@ - + THIS_FILE="SdpSupport.c" - + THIS_FILE="DefaultProxySelector.c" - + THIS_FILE="SctpChannelImpl.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6844,7 +6841,7 @@ - + ../../jdk/src/share/native/sun/nio/ch/sctp @@ -6855,14 +6852,14 @@ - + THIS_FILE="GnomeFileTypeDetector.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6878,7 +6875,7 @@ - + ../../jdk/src/share/native/sun/security/jgss/wrapper @@ -6887,7 +6884,7 @@ - + ../../jdk/src/share/native/sun/security/pkcs11 @@ -6901,7 +6898,7 @@ - + ../../jdk/src/share/native/sun/security/smartcardio @@ -6915,7 +6912,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6932,7 +6929,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6950,7 +6947,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -6983,7 +6980,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -7021,7 +7018,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -7040,7 +7037,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -7065,8 +7062,9 @@ - LOCAL_SOURCES default + false + false @@ -9752,10 +9750,6 @@ ex="false" tool="1" flavor2="0"> - - - - - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -20574,7 +20568,7 @@ - + _GNU_SOURCE @@ -20598,7 +20592,7 @@ - + ../../hotspot/agent/src/os/linux @@ -20613,7 +20607,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20639,7 +20633,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20665,7 +20659,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20675,7 +20669,7 @@ - + ../../hotspot/src/os/posix/launcher @@ -20712,7 +20706,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20738,7 +20732,7 @@ - + ../../hotspot/src/os/posix/launcher @@ -20775,7 +20769,7 @@ - + ../../hotspot/src/share/vm/prims @@ -20794,7 +20788,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20820,7 +20814,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20846,7 +20840,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20872,7 +20866,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20898,7 +20892,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20924,7 +20918,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20950,7 +20944,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -20976,7 +20970,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21002,7 +20996,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21028,7 +21022,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21054,7 +21048,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21080,7 +21074,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21106,7 +21100,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21132,7 +21126,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21158,7 +21152,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21184,7 +21178,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21210,7 +21204,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21236,7 +21230,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -21262,7 +21256,7 @@ - + THIS_FILE="ArrayReferenceImpl.c" @@ -21281,7 +21275,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21315,7 +21309,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21341,7 +21335,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21379,7 +21373,7 @@ - + ../../jdk/src/share/demo/jvmti/heapTracker @@ -21389,7 +21383,7 @@ - + ../../jdk/src/share/demo/jvmti/compiledMethodLoad @@ -21401,7 +21395,7 @@ - + ../../jdk/src/share/demo/jvmti/gctest @@ -21413,7 +21407,7 @@ - + ../../jdk/src/share/demo/jvmti/heapTracker @@ -21426,7 +21420,7 @@ - + ../../jdk/src/share/demo/jvmti/heapViewer @@ -21438,7 +21432,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/gensrc_headers @@ -21453,7 +21447,7 @@ - + ../../jdk/src/share/demo/jvmti/hprof @@ -21468,7 +21462,7 @@ - + ../../jdk/src/share/demo/jvmti/minst @@ -21481,7 +21475,7 @@ - + ../../jdk/src/share/demo/jvmti/mtrace @@ -21494,7 +21488,7 @@ - + ../../jdk/src/share/demo/jvmti/versionCheck @@ -21506,7 +21500,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21537,7 +21531,7 @@ - + THIS_FILE="DirectAudioDevice.c" @@ -21549,7 +21543,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21586,7 +21580,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21612,7 +21606,7 @@ - + ARCH="amd64" @@ -21629,7 +21623,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21661,7 +21655,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21677,7 +21671,7 @@ - + ../../jdk/src/share/native/java/lang/fdlibm/include @@ -21685,7 +21679,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -21711,7 +21705,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -21737,7 +21731,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21759,7 +21753,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21792,7 +21786,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21825,14 +21819,14 @@ - + THIS_FILE="AtomicLong.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21864,14 +21858,14 @@ - + THIS_FILE="compress.c" - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -21898,7 +21892,7 @@ - + THIS_FILE="debug_assert.c" @@ -21919,7 +21913,7 @@ - + ARCH="amd64" @@ -21935,7 +21929,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -21972,7 +21966,7 @@ - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -22000,14 +21994,14 @@ - + THIS_FILE="img_colors.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22043,7 +22037,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22080,14 +22074,14 @@ - + THIS_FILE="imageioJPEG.c" - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -22115,7 +22109,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22134,7 +22128,7 @@ - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -22162,7 +22156,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22200,7 +22194,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22245,7 +22239,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22271,7 +22265,7 @@ - + ../../jdk/src/share/native/sun/java2d @@ -22280,7 +22274,7 @@ - + ../../jdk/src/share/native/sun/awt @@ -22310,7 +22304,7 @@ - + ../../jdk/src/share/native/sun/awt/debug @@ -22341,7 +22335,7 @@ - + ../../jdk/src/share/native/sun/awt @@ -22371,7 +22365,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22399,7 +22393,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22442,7 +22436,7 @@ - + ../../jdk/make @@ -22452,7 +22446,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22495,7 +22489,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22531,7 +22525,7 @@ - + ../../jdk/src/share/native/sun/security/ec @@ -22544,7 +22538,7 @@ - + ../../jdk/src/share/native/sun/security/jgss/wrapper @@ -22556,7 +22550,7 @@ - + ../../jdk/src/share/native/sun/security/pkcs11 @@ -22570,7 +22564,7 @@ - + ../../jdk/src/share/native/sun/security/smartcardio @@ -22584,7 +22578,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22612,7 +22606,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22641,7 +22635,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22673,7 +22667,7 @@ - + ARCH="amd64" @@ -22690,7 +22684,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22714,7 +22708,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22729,7 +22723,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22750,7 +22744,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22771,14 +22765,14 @@ - + THIS_FILE="LinuxOperatingSystem.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22791,7 +22785,7 @@ - + ../../jdk/src/share/native/sun/management @@ -22799,7 +22793,7 @@ - + ../../jdk/src/share/native/com/sun/media/sound @@ -22818,7 +22812,7 @@ - + ../../jdk/make @@ -22828,7 +22822,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22861,7 +22855,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -22877,7 +22871,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -22902,7 +22896,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -22928,7 +22922,7 @@ - + ../../jdk/src/share/native/java/net @@ -22943,7 +22937,7 @@ - + ../../jdk/src/share/native/sun/nio/ch @@ -22957,7 +22951,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -22983,14 +22977,14 @@ - + THIS_FILE="splashscreen_sys.c" - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -23017,7 +23011,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23046,7 +23040,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23084,14 +23078,14 @@ - + THIS_FILE="X11FontScaler_md.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23109,7 +23103,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23131,28 +23125,28 @@ - + THIS_FILE="SdpSupport.c" - + THIS_FILE="DefaultProxySelector.c" - + THIS_FILE="SctpChannelImpl.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23166,7 +23160,7 @@ - + ../../jdk/src/share/native/sun/nio/ch/sctp @@ -23177,14 +23171,14 @@ - + THIS_FILE="GnomeFileTypeDetector.c" - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23200,7 +23194,7 @@ - + ../../jdk/src/share/native/sun/security/jgss/wrapper @@ -23209,7 +23203,7 @@ - + ../../jdk/src/share/native/sun/security/pkcs11 @@ -23223,7 +23217,7 @@ - + ../../jdk/src/share/native/sun/security/smartcardio @@ -23237,7 +23231,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23254,7 +23248,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23272,7 +23266,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23305,7 +23299,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23343,7 +23337,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23362,7 +23356,7 @@ - + ../../build/linux-x86_64-normal-server-release/jdk/include @@ -23387,8 +23381,9 @@ - LOCAL_SOURCES default + false + false @@ -27228,10 +27223,6 @@ ex="false" tool="1" flavor2="0"> - - - - - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -38053,7 +38044,7 @@ - + ../../hotspot/src/os_cpu/solaris_x86/vm @@ -38088,7 +38079,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/product @@ -38098,7 +38089,7 @@ - + _GNU_SOURCE @@ -38111,7 +38102,7 @@ - + ../../hotspot/agent/src/os/solaris/proc @@ -38137,14 +38128,14 @@ - + ${IDE_ALT_BOOTDIR}/include/linux - + ../../hotspot/src/share/vm/prims @@ -38184,7 +38175,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -38199,7 +38190,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -38216,7 +38207,7 @@ - + ../../hotspot/src/os/posix/launcher @@ -38287,21 +38278,21 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/product - + TIERED - + ../../hotspot/src/os_cpu/solaris_x86/vm @@ -38336,7 +38327,7 @@ - + ../../hotspot/src/share/vm/prims @@ -38376,7 +38367,7 @@ - + LINUX @@ -38386,7 +38377,7 @@ - + ../../hotspot/src/os/posix/launcher @@ -38450,7 +38441,7 @@ - + ../../hotspot/src/share/vm/adlc @@ -38462,7 +38453,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38482,7 +38473,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38502,7 +38493,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38522,7 +38513,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38542,7 +38533,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38562,7 +38553,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38582,7 +38573,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38602,7 +38593,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38622,7 +38613,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38642,7 +38633,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38662,7 +38653,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38682,7 +38673,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38702,7 +38693,7 @@ - + ../../build/linux-x86_64-normal-server-release/hotspot/linux_amd64_compiler2/product @@ -38726,7 +38717,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38746,7 +38737,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38766,7 +38757,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38786,7 +38777,7 @@ - + ../../build/solaris-x86_64-normal-server-release/hotspot/solaris_amd64_compiler2/generated @@ -38806,7 +38797,7 @@ - + THIS_FILE="add_gnu_debuglink.c" @@ -38832,28 +38823,28 @@ - + ../../jdk/make - + THIS_FILE="fix_empty_sec_hdr_flags.c" - + THIS_FILE="ArrayReferenceImpl.c" - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -38890,7 +38881,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -38919,7 +38910,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -38960,7 +38951,7 @@ - + ../../jdk/src/share/demo/jvmti/heapTracker @@ -38970,7 +38961,7 @@ - + ../../jdk/src/share/demo/jvmti/compiledMethodLoad @@ -38982,7 +38973,7 @@ - + ../../jdk/src/share/demo/jvmti/gctest @@ -38994,7 +38985,7 @@ - + ../../jdk/src/share/demo/jvmti/heapTracker @@ -39007,7 +38998,7 @@ - + ../../jdk/src/share/demo/jvmti/heapViewer @@ -39019,7 +39010,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/gensrc_headers @@ -39034,7 +39025,7 @@ - + ../../jdk/src/share/demo/jvmti/hprof @@ -39049,7 +39040,7 @@ - + ../../jdk/src/share/demo/jvmti/minst @@ -39062,7 +39053,7 @@ - + ../../jdk/src/share/demo/jvmti/mtrace @@ -39075,7 +39066,7 @@ - + ../../jdk/src/share/demo/jvmti/versionCheck @@ -39087,7 +39078,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39121,7 +39112,7 @@ - + THIS_FILE="DirectAudioDevice.c" @@ -39133,7 +39124,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39175,7 +39166,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39204,7 +39195,7 @@ - + ARCH="amd64" @@ -39224,7 +39215,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39256,7 +39247,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39272,7 +39263,7 @@ - + ../../jdk/src/share/native/java/lang/fdlibm/include @@ -39280,7 +39271,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -39306,7 +39297,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -39332,7 +39323,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39354,7 +39345,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39387,7 +39378,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39420,14 +39411,14 @@ - + THIS_FILE="AtomicLong.c" - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39459,14 +39450,14 @@ - + THIS_FILE="compress.c" - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -39493,7 +39484,7 @@ - + THIS_FILE="debug_assert.c" @@ -39514,7 +39505,7 @@ - + ARCH="amd64" @@ -39533,7 +39524,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39571,7 +39562,7 @@ - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -39599,14 +39590,14 @@ - + THIS_FILE="img_colors.c" - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39641,7 +39632,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39677,14 +39668,14 @@ - + THIS_FILE="imageioJPEG.c" - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -39712,7 +39703,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39730,7 +39721,7 @@ - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -39758,7 +39749,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39797,7 +39788,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39845,7 +39836,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -39874,7 +39865,7 @@ - + ../../jdk/src/share/native/sun/java2d @@ -39883,7 +39874,7 @@ - + ../../jdk/src/share/native/sun/awt @@ -39912,7 +39903,7 @@ - + ../../jdk/src/share/native/sun/awt/debug @@ -39944,7 +39935,7 @@ - + ../../jdk/src/share/native/sun/awt @@ -39973,7 +39964,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40004,7 +39995,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40050,7 +40041,7 @@ - + ../../jdk/make @@ -40060,7 +40051,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40106,7 +40097,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40145,7 +40136,7 @@ - + ../../jdk/src/share/native/sun/security/ec @@ -40158,7 +40149,7 @@ - + ../../jdk/src/share/native/sun/security/jgss/wrapper @@ -40170,7 +40161,7 @@ - + ../../jdk/src/share/native/sun/security/pkcs11 @@ -40184,7 +40175,7 @@ - + ../../jdk/src/share/native/sun/security/smartcardio @@ -40198,7 +40189,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40229,7 +40220,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40261,7 +40252,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40296,14 +40287,14 @@ - + THIS_FILE="exec_md.c" - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40340,7 +40331,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40376,7 +40367,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40404,7 +40395,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/democlasses/jni/Poller @@ -40412,7 +40403,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/gensrc_headers @@ -40427,7 +40418,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40461,14 +40452,14 @@ - + THIS_FILE="SolarisOperatingSystem.c" - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40496,7 +40487,7 @@ - + ../../jdk/src/share/native/sun/management @@ -40504,7 +40495,7 @@ - + ../../jdk/src/share/native/com/sun/media/sound @@ -40521,7 +40512,7 @@ - + ../../jdk/make @@ -40531,7 +40522,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40577,7 +40568,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40606,7 +40597,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -40631,7 +40622,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -40657,7 +40648,7 @@ - + ../../jdk/src/share/native/java/net @@ -40672,7 +40663,7 @@ - + ../../jdk/src/share/native/sun/nio/ch @@ -40686,7 +40677,7 @@ - + ../../jdk/src/solaris/native/java/lang @@ -40712,14 +40703,14 @@ - + THIS_FILE="splashscreen_sys.c" - + ARCH="amd64" @@ -40738,7 +40729,7 @@ - + ../../jdk/src/share/native/sun/awt/image/jpeg @@ -40765,7 +40756,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40807,7 +40798,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40859,14 +40850,14 @@ - + THIS_FILE="X11FontScaler_md.c" - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40897,7 +40888,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40932,28 +40923,28 @@ - + THIS_FILE="SdpSupport.c" - + THIS_FILE="DefaultProxySelector.c" - + THIS_FILE="SctpChannelImpl.c" - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -40982,7 +40973,7 @@ - + ../../jdk/src/share/native/sun/nio/ch/sctp @@ -40993,14 +40984,14 @@ - + THIS_FILE="GnomeFileTypeDetector.c" - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -41029,7 +41020,7 @@ - + ../../jdk/src/share/native/sun/security/jgss/wrapper @@ -41038,7 +41029,7 @@ - + ../../jdk/src/share/native/sun/security/pkcs11 @@ -41052,7 +41043,7 @@ - + ../../jdk/src/share/native/sun/security/smartcardio @@ -41066,7 +41057,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -41096,7 +41087,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -41127,7 +41118,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -41173,7 +41164,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -41225,7 +41216,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include @@ -41257,7 +41248,7 @@ - + ../../build/solaris-x86_64-normal-server-release/jdk/include --- old/common/nb_native/nbproject/project.xml 2015-06-16 15:02:48.198043109 -0700 +++ new/common/nb_native/nbproject/project.xml 2015-06-16 15:02:47.538619933 -0700 @@ -5,7 +5,7 @@ OpenJDK (Native) c,m - cc,cpp + cc,cpp,mm ad,h,hpp,in_out UTF-8 @@ -26,6 +26,9 @@ 0 + + false + --- old/make/jprt.properties 2015-06-16 15:02:54.221229462 -0700 +++ new/make/jprt.properties 2015-06-16 15:02:53.508103779 -0700 @@ -94,6 +94,7 @@ --with-boot-jdk=$ALT_BOOTDIR \ --with-jobs=$ALT_PARALLEL_COMPILE_JOBS \ --with-version-opt=$JPRT_JOB_ID \ + --disable-installer \ ${my.additional.build.configure.args.${jprt.test.set}} \ ${my.custom.build.configure.args} --- old/hotspot/make/Makefile 2015-06-16 15:03:00.853239271 -0700 +++ new/hotspot/make/Makefile 2015-06-16 15:03:00.196761460 -0700 @@ -55,6 +55,7 @@ # VERSION_MAJOR Major number for version (e.g. 9) # VERSION_MINOR Minor number for version (e.g. 0) # VERSION_SECURITY Security number for version (e.g. 0) +# VERSION_PATCH Security number for version (e.g. 0) # # Default is build both product fastdebug and create export area --- old/hotspot/make/aix/makefiles/vm.make 2015-06-16 15:03:07.401927226 -0700 +++ new/hotspot/make/aix/makefiles/vm.make 2015-06-16 15:03:06.778208266 -0700 @@ -77,6 +77,7 @@ JDK_VER_DEFS = -DVERSION_MAJOR=$(VERSION_MAJOR) \ -DVERSION_MINOR=$(VERSION_MINOR) \ -DVERSION_SECURITY=$(VERSION_SECURITY) \ + -DVERSION_PATCH=$(VERSION_PATCH) \ -DVERSION_BUILD=$(VERSION_BUILD) VM_VER_DEFS = -DHOTSPOT_VERSION_STRING="\"$(HOTSPOT_VERSION_STRING)\"" \ -DVERSION_STRING="\"$(VERSION_STRING)\"" \ --- old/hotspot/make/bsd/makefiles/vm.make 2015-06-16 15:03:13.783555752 -0700 +++ new/hotspot/make/bsd/makefiles/vm.make 2015-06-16 15:03:13.161615846 -0700 @@ -76,6 +76,7 @@ JDK_VER_DEFS = -DVERSION_MAJOR=$(VERSION_MAJOR) \ -DVERSION_MINOR=$(VERSION_MINOR) \ -DVERSION_SECURITY=$(VERSION_SECURITY) \ + -DVERSION_PATCH=$(VERSION_PATCH) \ -DVERSION_BUILD=$(VERSION_BUILD) VM_VER_DEFS = -DHOTSPOT_VERSION_STRING="\"$(HOTSPOT_VERSION_STRING)\"" \ -DVERSION_STRING="\"$(VERSION_STRING)\"" \ --- old/hotspot/make/linux/makefiles/vm.make 2015-06-16 15:03:20.278363907 -0700 +++ new/hotspot/make/linux/makefiles/vm.make 2015-06-16 15:03:19.581841953 -0700 @@ -78,6 +78,7 @@ JDK_VER_DEFS = -DVERSION_MAJOR=$(VERSION_MAJOR) \ -DVERSION_MINOR=$(VERSION_MINOR) \ -DVERSION_SECURITY=$(VERSION_SECURITY) \ + -DVERSION_PATCH=$(VERSION_PATCH) \ -DVERSION_BUILD=$(VERSION_BUILD) VM_VER_DEFS = -DHOTSPOT_VERSION_STRING="\"$(HOTSPOT_VERSION_STRING)\"" \ -DVERSION_STRING="\"$(VERSION_STRING)\"" \ --- old/hotspot/make/solaris/makefiles/vm.make 2015-06-16 15:03:27.193900453 -0700 +++ new/hotspot/make/solaris/makefiles/vm.make 2015-06-16 15:03:26.530982027 -0700 @@ -72,6 +72,7 @@ JDK_VER_DEFS = -DVERSION_MAJOR=$(VERSION_MAJOR) \ -DVERSION_MINOR=$(VERSION_MINOR) \ -DVERSION_SECURITY=$(VERSION_SECURITY) \ + -DVERSION_PATCH=$(VERSION_PATCH) \ -DVERSION_BUILD=$(VERSION_BUILD) VM_VER_DEFS = -DHOTSPOT_VERSION_STRING="\"$(HOTSPOT_VERSION_STRING)\"" \ -DVERSION_STRING="\"$(VERSION_STRING)\"" \ --- old/hotspot/make/windows/makefiles/defs.make 2015-06-16 15:03:33.785579182 -0700 +++ new/hotspot/make/windows/makefiles/defs.make 2015-06-16 15:03:33.103840762 -0700 @@ -182,6 +182,7 @@ MAKE_ARGS += VERSION_MAJOR=$(VERSION_MAJOR) MAKE_ARGS += VERSION_MINOR=$(VERSION_MINOR) MAKE_ARGS += VERSION_SECURITY=$(VERSION_SECURITY) +MAKE_ARGS += VERSION_PATCH=$(VERSION_PATCH) MAKE_ARGS += VERSION_BUILD=$(VERSION_BUILD) # JDK_DOTVER and JDK_VER are needed in Windows RC files --- old/hotspot/make/windows/makefiles/vm.make 2015-06-16 15:03:39.719636398 -0700 +++ new/hotspot/make/windows/makefiles/vm.make 2015-06-16 15:03:39.091821824 -0700 @@ -62,6 +62,7 @@ CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_MAJOR=$(VERSION_MAJOR)" CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_MINOR=$(VERSION_MINOR)" CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_SECURITY=$(VERSION_SECURITY)" +CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_PATCH=$(VERSION_PATCH)" CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_BUILD=$(VERSION_BUILD)" CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_STRING=\"$(VERSION_STRING)\"" CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_LIB_ARCH=\"$(HOTSPOT_LIB_ARCH)\"" --- old/hotspot/src/share/vm/memory/universe.cpp 2015-06-16 15:03:47.164258315 -0700 +++ new/hotspot/src/share/vm/memory/universe.cpp 2015-06-16 15:03:46.453599905 -0700 @@ -349,37 +349,6 @@ // Have already been initialized. _objectArrayKlassObj->append_to_sibling_list(); - // Compute is_jdk version flags. - // Only 1.3 or later has the java.lang.Shutdown class. - // Only 1.4 or later has the java.lang.CharSequence interface. - // Only 1.5 or later has the java.lang.management.MemoryUsage class. - if (JDK_Version::is_partially_initialized()) { - uint8_t jdk_version; - Klass* k = SystemDictionary::resolve_or_null( - vmSymbols::java_lang_management_MemoryUsage(), THREAD); - CLEAR_PENDING_EXCEPTION; // ignore exceptions - if (k == NULL) { - k = SystemDictionary::resolve_or_null( - vmSymbols::java_lang_CharSequence(), THREAD); - CLEAR_PENDING_EXCEPTION; // ignore exceptions - if (k == NULL) { - k = SystemDictionary::resolve_or_null( - vmSymbols::java_lang_Shutdown(), THREAD); - CLEAR_PENDING_EXCEPTION; // ignore exceptions - if (k == NULL) { - jdk_version = 2; - } else { - jdk_version = 3; - } - } else { - jdk_version = 4; - } - } else { - jdk_version = 5; - } - JDK_Version::fully_initialize(jdk_version); - } - #ifdef ASSERT if (FullGCALot) { // Allocate an array of dummy objects. --- old/hotspot/src/share/vm/prims/jvm.cpp 2015-06-16 15:03:53.593642057 -0700 +++ new/hotspot/src/share/vm/prims/jvm.cpp 2015-06-16 15:03:52.843920178 -0700 @@ -3656,8 +3656,7 @@ memset(info, 0, info_size); info->jvm_version = Abstract_VM_Version::jvm_version(); - info->update_version = 0; /* 0 in HotSpot Express VM */ - info->special_update_version = 0; /* 0 in HotSpot Express VM */ + info->patch_version = 0; // when we add a new capability in the jvm_version_info struct, we should also // consider to expose this new capability in the sun.rt.jvmCapabilities jvmstat --- old/hotspot/src/share/vm/prims/jvm.h 2015-06-16 15:03:59.647336888 -0700 +++ new/hotspot/src/share/vm/prims/jvm.h 2015-06-16 15:03:58.962313213 -0700 @@ -1184,10 +1184,8 @@ * ========================================================================== */ typedef struct { - /* VM version string: follows the JDK release version naming convention */ - unsigned int jvm_version; - unsigned int update_version : 8; - unsigned int special_update_version : 8; + unsigned int jvm_version; /* Encoded $VNUM as defined by JEP-223 */ + unsigned int patch_version : 8; unsigned int reserved1 : 16; unsigned int reserved2; @@ -1213,11 +1211,8 @@ JVM_GetVersionInfo(JNIEnv* env, jvm_version_info* info, size_t info_size); typedef struct { - // Naming convention of RE build version string: n.n.n[_uu[c]][-]-bxx - unsigned int jdk_version; /* Consists of major, minor, security (n.n.n) */ - /* and build number (xx) */ - unsigned int update_version : 8; /* Update release version (uu) */ - unsigned int special_update_version : 8; /* Special update release version (c)*/ + unsigned int jdk_version; /* Encoded $VNUM as defined by JEP-223 */ + unsigned int patch_version : 8; unsigned int reserved1 : 16; unsigned int reserved2; @@ -1239,10 +1234,6 @@ #define JDK_VERSION_MAJOR(version) ((version & 0xFF000000) >> 24) #define JDK_VERSION_MINOR(version) ((version & 0x00FF0000) >> 16) #define JDK_VERSION_SECURITY(version) ((version & 0x0000FF00) >> 8) - -/* Build number is available only for RE build. - * It will be zero for internal builds. - */ #define JDK_VERSION_BUILD(version) ((version & 0x000000FF)) /* --- old/hotspot/src/share/vm/runtime/java.cpp 2015-06-16 15:04:06.460635441 -0700 +++ new/hotspot/src/share/vm/runtime/java.cpp 2015-06-16 15:04:05.833831239 -0700 @@ -651,39 +651,22 @@ vm_exit_during_initialization( "Incompatible JDK is not using Reference.discovered field for pending list"); } - _current = JDK_Version(major, minor, security, info.update_version, - info.special_update_version, build, + _current = JDK_Version(major, minor, security, info.patch_version, build, info.thread_park_blocker == 1, info.post_vm_init_hook_enabled == 1); } } -void JDK_Version::fully_initialize( - uint8_t major, uint8_t minor, uint8_t security, uint8_t update) { - // This is only called when current is less than 1.6 and we've gotten - // far enough in the initialization to determine the exact version. - assert(major < 6, "not needed for JDK version >= 6"); - assert(is_partially_initialized(), "must not initialize"); - if (major < 5) { - // JDK verison sequence: 1.2.x, 1.3.x, 1.4.x, 5.0.x, 6.0.x, etc. - security = minor; - minor = major; - major = 1; - } - _current = JDK_Version(major, minor, security, update); -} - void JDK_Version_init() { JDK_Version::initialize(); } static int64_t encode_jdk_version(const JDK_Version& v) { return - ((int64_t)v.major_version() << (BitsPerByte * 5)) | - ((int64_t)v.minor_version() << (BitsPerByte * 4)) | - ((int64_t)v.security_version() << (BitsPerByte * 3)) | - ((int64_t)v.update_version() << (BitsPerByte * 2)) | - ((int64_t)v.special_update_version() << (BitsPerByte * 1)) | + ((int64_t)v.major_version() << (BitsPerByte * 4)) | + ((int64_t)v.minor_version() << (BitsPerByte * 3)) | + ((int64_t)v.security_version() << (BitsPerByte * 2)) | + ((int64_t)v.patch_version() << (BitsPerByte * 1)) | ((int64_t)v.build_number() << (BitsPerByte * 0)); } @@ -720,18 +703,13 @@ if (_security > 0) { rc = jio_snprintf(&buffer[index], buflen - index, ".%d", _security); } - if (_update > 0) { - rc = jio_snprintf(&buffer[index], buflen - index, "_%02d", _update); - if (rc == -1) return; - index += rc; - } - if (_special > 0) { - rc = jio_snprintf(&buffer[index], buflen - index, "%c", _special); + if (_patch > 0) { + rc = jio_snprintf(&buffer[index], buflen - index, ".%d", _patch); if (rc == -1) return; index += rc; } if (_build > 0) { - rc = jio_snprintf(&buffer[index], buflen - index, "-b%02d", _build); + rc = jio_snprintf(&buffer[index], buflen - index, "+%d", _build); if (rc == -1) return; index += rc; } --- old/hotspot/src/share/vm/runtime/java.hpp 2015-06-16 15:04:12.556561565 -0700 +++ new/hotspot/src/share/vm/runtime/java.hpp 2015-06-16 15:04:11.973901679 -0700 @@ -82,8 +82,7 @@ uint8_t _major; uint8_t _minor; uint8_t _security; - uint8_t _update; - uint8_t _special; + uint8_t _patch; uint8_t _build; // If partially initialized, the above fields are invalid and we know @@ -100,10 +99,6 @@ // initializes or partially initializes the _current static field static void initialize(); - // Completes initialization for a pre-JDK6 version. - static void fully_initialize(uint8_t major, uint8_t minor = 0, - uint8_t security = 0, uint8_t update = 0); - public: // Returns true if the the current version has only been partially initialized @@ -111,16 +106,16 @@ return _current._partially_initialized; } - JDK_Version() : _major(0), _minor(0), _security(0), _update(0), - _special(0), _build(0), _partially_initialized(false), + JDK_Version() : _major(0), _minor(0), _security(0), _patch(0), _build(0), + _partially_initialized(false), _thread_park_blocker(false), _post_vm_init_hook_enabled(false) {} JDK_Version(uint8_t major, uint8_t minor = 0, uint8_t security = 0, - uint8_t update = 0, uint8_t special = 0, uint8_t build = 0, + uint8_t patch = 0, uint8_t build = 0, bool thread_park_blocker = false, bool post_vm_init_hook_enabled = false) : - _major(major), _minor(minor), _security(security), _update(update), - _special(special), _build(build), _partially_initialized(false), + _major(major), _minor(minor), _security(security), _patch(patch), + _build(build), _partially_initialized(false), _thread_park_blocker(thread_park_blocker), _post_vm_init_hook_enabled(post_vm_init_hook_enabled) {} @@ -133,15 +128,10 @@ return JDK_Version(m); } - static JDK_Version jdk_update(uint8_t major, uint8_t update_number) { - return JDK_Version(major, 0, 0, update_number); - } - uint8_t major_version() const { return _major; } uint8_t minor_version() const { return _minor; } - uint8_t security_version() const { return _security; } - uint8_t update_version() const { return _update; } - uint8_t special_update_version() const { return _special; } + uint8_t security_version() const { return _security; } + uint8_t patch_version() const { return _patch; } uint8_t build_number() const { return _build; } bool supports_thread_park_blocker() const { @@ -151,7 +141,7 @@ return _post_vm_init_hook_enabled; } - // Performs a full ordering comparison using all fields (update, build, etc.) + // Performs a full ordering comparison using all fields (patch, build, etc.) int compare(const JDK_Version& other) const; /** --- old/hotspot/src/share/vm/runtime/vm_version.cpp 2015-06-16 15:04:19.106480024 -0700 +++ new/hotspot/src/share/vm/runtime/vm_version.cpp 2015-06-16 15:04:18.522828633 -0700 @@ -52,6 +52,9 @@ #ifndef VERSION_SECURITY #error VERSION_SECURITY must be defined #endif +#ifndef VERSION_PATCH + #error VERSION_PATCH must be defined +#endif #ifndef VERSION_BUILD #error VERSION_BUILD must be defined #endif @@ -76,20 +79,11 @@ int Abstract_VM_Version::_vm_major_version = VERSION_MAJOR; int Abstract_VM_Version::_vm_minor_version = VERSION_MINOR; int Abstract_VM_Version::_vm_security_version = VERSION_SECURITY; +int Abstract_VM_Version::_vm_patch_version = VERSION_PATCH; int Abstract_VM_Version::_vm_build_number = VERSION_BUILD; -bool Abstract_VM_Version::_initialized = false; unsigned int Abstract_VM_Version::_parallel_worker_threads = 0; bool Abstract_VM_Version::_parallel_worker_threads_initialized = false; -void Abstract_VM_Version::initialize() { - // FIXME: Initialization can probably be removed now. - if (_initialized) { - return; - } - - _initialized = true; -} - #if defined(_LP64) #define VMLP "64-Bit " #else --- old/hotspot/src/share/vm/runtime/vm_version.hpp 2015-06-16 15:04:25.599898633 -0700 +++ new/hotspot/src/share/vm/runtime/vm_version.hpp 2015-06-16 15:04:24.632890255 -0700 @@ -46,8 +46,8 @@ static int _vm_major_version; static int _vm_minor_version; static int _vm_security_version; + static int _vm_patch_version; static int _vm_build_number; - static bool _initialized; static unsigned int _parallel_worker_threads; static bool _parallel_worker_threads_initialized; static int _reserve_for_allocation_prefetch; @@ -68,10 +68,11 @@ static const char* vm_platform_string(); static const char* vm_build_user(); - static int vm_major_version() { assert(_initialized, "not initialized"); return _vm_major_version; } - static int vm_minor_version() { assert(_initialized, "not initialized"); return _vm_minor_version; } - static int vm_security_version() { assert(_initialized, "not initialized"); return _vm_security_version; } - static int vm_build_number() { assert(_initialized, "not initialized"); return _vm_build_number; } + static int vm_major_version() { return _vm_major_version; } + static int vm_minor_version() { return _vm_minor_version; } + static int vm_security_version() { return _vm_security_version; } + static int vm_patch_version() { return _vm_patch_version; } + static int vm_build_number() { return _vm_build_number; } // Gets the jvm_version_info.jvm_version defined in jvm.h static unsigned int jvm_version(); --- old/hotspot/src/share/vm/services/diagnosticCommand.cpp 2015-06-16 15:04:31.716706473 -0700 +++ new/hotspot/src/share/vm/services/diagnosticCommand.cpp 2015-06-16 15:04:31.036800196 -0700 @@ -169,12 +169,13 @@ output()->print_cr("%s version %s", Abstract_VM_Version::vm_name(), Abstract_VM_Version::vm_release()); JDK_Version jdk_version = JDK_Version::current(); - if (jdk_version.update_version() > 0) { - output()->print_cr("JDK %d.%d_%02d", jdk_version.major_version(), - jdk_version.minor_version(), jdk_version.update_version()); + if (jdk_version.patch_version() > 0) { + output()->print_cr("JDK %d.%d.%d.%d", jdk_version.major_version(), + jdk_version.minor_version(), jdk_version.security_version(), + jdk_version.patch_version()); } else { - output()->print_cr("JDK %d.%d", jdk_version.major_version(), - jdk_version.minor_version()); + output()->print_cr("JDK %d.%d.%d", jdk_version.major_version(), + jdk_version.minor_version(), jdk_version.security_version()); } } --- old/hotspot/src/share/vm/services/management.cpp 2015-06-16 15:04:37.903889882 -0700 +++ new/hotspot/src/share/vm/services/management.cpp 2015-06-16 15:04:37.168578353 -0700 @@ -86,10 +86,6 @@ ClassLoadingService::init(); #else ThreadService::init(); - // Make sure the VM version is initialized - // This is normally called by RuntimeService::init(). - // Since that is conditionalized out, we need to call it here. - Abstract_VM_Version::initialize(); #endif // INCLUDE_MANAGEMENT } --- old/hotspot/src/share/vm/services/runtimeService.cpp 2015-06-16 15:04:43.907222441 -0700 +++ new/hotspot/src/share/vm/services/runtimeService.cpp 2015-06-16 15:04:43.302553063 -0700 @@ -42,8 +42,6 @@ double RuntimeService::_last_safepoint_sync_time_sec = 0.0; void RuntimeService::init() { - // Make sure the VM version is initialized - Abstract_VM_Version::initialize(); if (UsePerfData) { EXCEPTION_MARK; --- old/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/XalanConstants.java 2015-06-16 15:04:53.593827728 -0700 +++ new/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/XalanConstants.java 2015-06-16 15:04:52.983608134 -0700 @@ -227,24 +227,21 @@ public static final boolean IS_JDK8_OR_ABOVE = isJavaVersionAtLeast(8); /* - * Check the version of the current JDK against that specified in the - * parameter + * Check the major version of the current JDK against that specified + * in the parameter * - * There is a proposal to change the java version string to: - * MAJOR.MINOR.FU.CPU.PSU-BUILDNUMBER_BUGIDNUMBER_OPTIONAL - * This method would work with both the current format and that proposed + * In JDK9 the java version string was changed to comply with JEP-223 + * so this method was modified to handle that new format as well * - * @param compareTo a JDK version to be compared to - * @return true if the current version is the same or above that represented - * by the parameter + * @param compareTo a JDK major version to be compared to + * @return true if the current major version is the same or above + * that represented by the parameter */ public static boolean isJavaVersionAtLeast(int compareTo) { String javaVersion = SecuritySupport.getSystemProperty("java.version"); - String versions[] = javaVersion.split("\\.", 3); - if (Integer.parseInt(versions[0]) >= compareTo || - Integer.parseInt(versions[1]) >= compareTo) { - return true; - } - return false; + javaVersion = (javaVersion.matches("[1-9][0-9]*(\\.(0|[1-9][0-9]*))*\\-.*")) ? + javaVersion.split("-|\\.")[0] : + javaVersion.split("\\.", 3)[1]; + return Integer.parseInt(javaVersion) >= compareTo; } } // class Constants --- old/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/Constants.java 2015-06-16 15:05:00.743682307 -0700 +++ new/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/Constants.java 2015-06-16 15:05:00.124336282 -0700 @@ -857,27 +857,24 @@ } // getXercesProperties():Enumeration /* - * Check the version of the current JDK against that specified in the - * parameter + * Check the major version of the current JDK against that specified + * in the parameter * - * There is a proposal to change the java version string to: - * MAJOR.MINOR.FU.CPU.PSU-BUILDNUMBER_BUGIDNUMBER_OPTIONAL - * This method would work with both the current format and that proposed + * In JDK9 the java version string was changed to comply with JEP-223 + * so this method was modified to handle that new format as well * - * @param compareTo a JDK version to be compared to - * @return true if the current version is the same or above that represented - * by the parameter + * @param compareTo a JDK major version to be compared to + * @return true if the current major version is the same or above + * that represented by the parameter */ public static boolean isJavaVersionAtLeast(int compareTo) { String javaVersion = SecuritySupport.getSystemProperty("java.version"); - String versions[] = javaVersion.split("\\.", 3); - if (Integer.parseInt(versions[0]) >= compareTo || - Integer.parseInt(versions[1]) >= compareTo) { - return true; - } - return false; + javaVersion = (javaVersion.matches("[1-9][0-9]*(\\.(0|[1-9][0-9]*))*\\-.*")) ? + javaVersion.split("-|\\.")[0] : + javaVersion.split("\\.", 3)[1]; + return Integer.parseInt(javaVersion) >= compareTo; } - + // // Classes // --- old/jdk/make/mapfiles/libjava/mapfile-vers 2015-06-16 15:05:07.600297902 -0700 +++ new/jdk/make/mapfiles/libjava/mapfile-vers 2015-06-16 15:05:06.962280179 -0700 @@ -269,9 +269,7 @@ Java_sun_reflect_Reflection_getCallerClass__I; Java_sun_reflect_Reflection_getClassAccessFlags; Java_sun_misc_Version_getJdkVersionInfo; - Java_sun_misc_Version_getJdkSpecialVersion; Java_sun_misc_Version_getJvmVersionInfo; - Java_sun_misc_Version_getJvmSpecialVersion; Java_sun_misc_VM_latestUserDefinedLoader; Java_sun_misc_VM_getuid; Java_sun_misc_VM_geteuid; --- old/jdk/src/java.base/share/classes/sun/misc/Version.java.template 2015-06-16 15:05:15.708931547 -0700 +++ new/jdk/src/java.base/share/classes/sun/misc/Version.java.template 2015-06-16 15:05:15.011336068 -0700 @@ -55,15 +55,13 @@ private static int jvm_major_version = 0; private static int jvm_minor_version = 0; private static int jvm_security_version = 0; - private static int jvm_update_version = 0; + private static int jvm_patch_version = 0; private static int jvm_build_number = 0; - private static String jvm_special_version = null; private static int jdk_major_version = 0; private static int jdk_minor_version = 0; private static int jdk_security_version = 0; - private static int jdk_update_version = 0; + private static int jdk_patch_version = 0; private static int jdk_build_number = 0; - private static String jdk_special_version = null; /** * In case you were wondering this method is called by java -version. @@ -146,9 +144,7 @@ /** - * Returns the security version of the running JVM if it's 1.6 or newer - * or any RE VM build. It will return 0 if it's an internal 1.5 or - * 1.4.x build. + * Returns the security version of the running JVM * @since 1.6 */ public static synchronized int jvmSecurityVersion() { @@ -159,31 +155,18 @@ } /** - * Returns the update release version of the running JVM if it's - * a RE build. It will return 0 if it's an internal build. - * @since 1.6 + * Returns the patch release version of the running JVM + * @since JDK9 */ - public static synchronized int jvmUpdateVersion() { - if (!versionsInitialized) { - initVersions(); - } - return jvm_update_version; - } - - public static synchronized String jvmSpecialVersion() { + public static synchronized int jvmPatchVersion() { if (!versionsInitialized) { initVersions(); } - if (jvm_special_version == null) { - jvm_special_version = getJvmSpecialVersion(); - } - return jvm_special_version; + return jvm_patch_version; } - public static native String getJvmSpecialVersion(); /** - * Returns the build number of the running JVM if it's a RE build - * It will return 0 if it's an internal build. + * Returns the build number of the running JVM * @since 1.6 */ public static synchronized int jvmBuildNumber() { @@ -228,31 +211,18 @@ } /** - * Returns the update release version of the running JDK if it's - * a RE build. It will return 0 if it's an internal build. - * @since 1.6 + * Returns the patch release version of the running JDK + * @since JDK9 */ - public static synchronized int jdkUpdateVersion() { - if (!versionsInitialized) { - initVersions(); - } - return jdk_update_version; - } - - public static synchronized String jdkSpecialVersion() { + public static synchronized int jdkPatchVersion() { if (!versionsInitialized) { initVersions(); } - if (jdk_special_version == null) { - jdk_special_version = getJdkSpecialVersion(); - } - return jdk_special_version; + return jdk_patch_version; } - public static native String getJdkSpecialVersion(); /** - * Returns the build number of the running JDK if it's a RE build - * It will return 0 if it's an internal build. + * Returns the build number of the running JDK * @since 1.6 */ public static synchronized int jdkBuildNumber() { @@ -262,64 +232,12 @@ return jdk_build_number; } - // true if JVM exports the version info including the capabilities - private static boolean jvmVersionInfoAvailable; private static synchronized void initVersions() { if (versionsInitialized) { return; } - jvmVersionInfoAvailable = getJvmVersionInfo(); - if (!jvmVersionInfoAvailable) { - // parse java.vm.version for older JVM before the - // new JVM_GetVersionInfo is added. - // valid format of the version string is: - // n.n.n[_uu[c]][-]-bxx - CharSequence cs = System.getProperty("java.vm.version"); - if (cs.length() >= 5 && - Character.isDigit(cs.charAt(0)) && cs.charAt(1) == '.' && - Character.isDigit(cs.charAt(2)) && cs.charAt(3) == '.' && - Character.isDigit(cs.charAt(4))) { - jvm_major_version = Character.digit(cs.charAt(0), 10); - jvm_minor_version = Character.digit(cs.charAt(2), 10); - jvm_security_version = Character.digit(cs.charAt(4), 10); - cs = cs.subSequence(5, cs.length()); - if (cs.charAt(0) == '_' && cs.length() >= 3 && - Character.isDigit(cs.charAt(1)) && - Character.isDigit(cs.charAt(2))) { - int nextChar = 3; - try { - String uu = cs.subSequence(1, 3).toString(); - jvm_update_version = Integer.valueOf(uu).intValue(); - if (cs.length() >= 4) { - char c = cs.charAt(3); - if (c >= 'a' && c <= 'z') { - jvm_special_version = Character.toString(c); - nextChar++; - } - } - } catch (NumberFormatException e) { - // not conforming to the naming convention - return; - } - cs = cs.subSequence(nextChar, cs.length()); - } - if (cs.charAt(0) == '-') { - // skip the first character - // valid format: -bxx or bxx - // non-product VM will have -debug|-release appended - cs = cs.subSequence(1, cs.length()); - String[] res = cs.toString().split("-"); - for (String s : res) { - if (s.charAt(0) == 'b' && s.length() == 3 && - Character.isDigit(s.charAt(1)) && - Character.isDigit(s.charAt(2))) { - jvm_build_number = - Integer.valueOf(s.substring(1, 3)).intValue(); - break; - } - } - } - } + if (!getJvmVersionInfo()) { + throw new RuntimeException("Unable to obtain JVM version info"); } getJdkVersionInfo(); versionsInitialized = true; @@ -327,8 +245,6 @@ // Gets the JVM version info if available and sets the jvm_*_version fields // and its capabilities. - // - // Return false if not available which implies an old VM (Tiger or before). private static native boolean getJvmVersionInfo(); private static native void getJdkVersionInfo(); } --- old/jdk/src/java.base/share/native/include/jvm.h 2015-06-16 15:05:22.744580395 -0700 +++ new/jdk/src/java.base/share/native/include/jvm.h 2015-06-16 15:05:22.028094369 -0700 @@ -1127,9 +1127,8 @@ * ========================================================================== */ typedef struct { - unsigned int jvm_version; /* Follows JDK version string as specified by JEP-223 */ - unsigned int update_version : 8; /* Update release version (uu) */ - unsigned int special_update_version : 8; /* Special update release version (c)*/ + unsigned int jvm_version; /* Encoded $VNUM as specified by JEP-223 */ + unsigned int patch_version : 8; /* JEP-223 patch version */ unsigned int reserved1 : 16; unsigned int reserved2; @@ -1149,19 +1148,14 @@ #define JVM_VERSION_MAJOR(version) ((version & 0xFF000000) >> 24) #define JVM_VERSION_MINOR(version) ((version & 0x00FF0000) >> 16) #define JVM_VERSION_SECURITY(version) ((version & 0x0000FF00) >> 8) - -/* Build number is available only for RE builds. - * It will be zero for internal builds. - */ #define JVM_VERSION_BUILD(version) ((version & 0x000000FF)) JNIEXPORT void JNICALL JVM_GetVersionInfo(JNIEnv* env, jvm_version_info* info, size_t info_size); typedef struct { - unsigned int jdk_version; /* JDK version string as specified by JEP-223 */ - unsigned int update_version : 8; /* Update release version (uu) */ - unsigned int special_update_version : 8; /* Special update release version (c)*/ + unsigned int jdk_version; /* Encoded $VNUM as specified by JEP-223 */ + unsigned int patch_version : 8; /* JEP-223 patch version */ unsigned int reserved1 : 16; unsigned int reserved2; @@ -1183,10 +1177,6 @@ #define JDK_VERSION_MAJOR(version) ((version & 0xFF000000) >> 24) #define JDK_VERSION_MINOR(version) ((version & 0x00FF0000) >> 16) #define JDK_VERSION_SECURITY(version) ((version & 0x0000FF00) >> 8) - -/* Build number is available only for RE build (i.e. JDK_BUILD_NUMBER is set to NN) - * It will be zero for internal builds. - */ #define JDK_VERSION_BUILD(version) ((version & 0x000000FF)) /* --- old/jdk/src/java.base/share/native/libjava/Version.c 2015-06-16 15:05:29.491763519 -0700 +++ new/jdk/src/java.base/share/native/libjava/Version.c 2015-06-16 15:05:28.818717751 -0700 @@ -30,8 +30,6 @@ #include "sun_misc_Version.h" -char jvm_special_version = '\0'; -char jdk_special_version = '\0'; static void setStaticIntField(JNIEnv* env, jclass cls, const char* name, jint value) { jfieldID fid; @@ -67,23 +65,12 @@ JNU_CHECK_EXCEPTION_RETURN(env, JNI_FALSE); setStaticIntField(env, cls, "jvm_build_number", JVM_VERSION_BUILD(info.jvm_version)); JNU_CHECK_EXCEPTION_RETURN(env, JNI_FALSE); - setStaticIntField(env, cls, "jvm_update_version", info.update_version); + setStaticIntField(env, cls, "jvm_patch_version", info.patch_version); JNU_CHECK_EXCEPTION_RETURN(env, JNI_FALSE); - jvm_special_version = info.special_update_version; return JNI_TRUE; } -JNIEXPORT jstring JNICALL -Java_sun_misc_Version_getJvmSpecialVersion(JNIEnv *env, jclass cls) { - char s[2]; - jstring special; - s[0] = jvm_special_version; - s[1] = '\0'; - special = (*env)->NewStringUTF(env, s); - return special; -} - JNIEXPORT void JNICALL Java_sun_misc_Version_getJdkVersionInfo(JNIEnv *env, jclass cls) { @@ -98,17 +85,6 @@ JNU_CHECK_EXCEPTION(env); setStaticIntField(env, cls, "jdk_build_number", JDK_VERSION_BUILD(info.jdk_version)); JNU_CHECK_EXCEPTION(env); - setStaticIntField(env, cls, "jdk_update_version", info.update_version); + setStaticIntField(env, cls, "jdk_patch_version", info.patch_version); JNU_CHECK_EXCEPTION(env); - jdk_special_version = info.special_update_version; -} - -JNIEXPORT jstring JNICALL -Java_sun_misc_Version_getJdkSpecialVersion(JNIEnv *env, jclass cls) { - char s[2]; - jstring special; - s[0] = jdk_special_version; - s[1] = '\0'; - special = (*env)->NewStringUTF(env, s); - return special; } --- old/jdk/src/java.base/share/native/libjava/jdk_util.c 2015-06-16 15:05:35.775117612 -0700 +++ new/jdk/src/java.base/share/native/libjava/jdk_util.c 2015-06-16 15:05:35.157468850 -0700 @@ -37,6 +37,7 @@ const unsigned int version_major = VERSION_MAJOR; const unsigned int version_minor = VERSION_MINOR; const unsigned int version_security = VERSION_SECURITY; + const unsigned int version_patch = VERSION_PATCH; const unsigned int version_build = VERSION_BUILD; memset(info, 0, info_size); @@ -44,9 +45,7 @@ ((version_minor & 0xFF) << 16) | ((version_security & 0xFF) << 8) | (version_build & 0xFF); - // FIXME: update_version and special_update_version does not make sense anymore. - info->update_version = 0; - info->special_update_version = 0; + info->patch_version = version_patch; info->thread_park_blocker = 1; // Advertise presence of sun.misc.PostVMInitHook: // future optimization: detect if this is enabled. --- old/jdk/test/sun/misc/Version/Version.java 2015-06-16 15:05:42.865564921 -0700 +++ new/jdk/test/sun/misc/Version/Version.java 2015-06-16 15:05:42.220477604 -0700 @@ -31,6 +31,9 @@ */ import static sun.misc.Version.*; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + public class Version { public static void main(String[] args) throws Exception { @@ -38,8 +41,7 @@ VersionInfo v1 = new VersionInfo(jdkMajorVersion(), jdkMinorVersion(), jdkSecurityVersion(), - jdkUpdateVersion(), - jdkSpecialVersion(), + jdkPatchVersion(), jdkBuildNumber()); System.out.println("JDK version = " + jdk + " " + v1); if (!jdk.equals(v1)) { @@ -49,8 +51,7 @@ VersionInfo v2 = new VersionInfo(jvmMajorVersion(), jvmMinorVersion(), jvmSecurityVersion(), - jvmUpdateVersion(), - jvmSpecialVersion(), + jvmPatchVersion(), jvmBuildNumber()); System.out.println("JVM version = " + jvm + " " + v2); if (!jvm.equals(v2)) { @@ -61,108 +62,62 @@ static class VersionInfo { final int major; final int minor; - final int micro; - final int update; - final String special; + final int security; + final int patch; final int build; - VersionInfo(int major, int minor, int micro, - int update, String special, int build) { + VersionInfo(int major, int minor, int security, + int patch, int build) { this.major = major; this.minor = minor; - this.micro = micro; - this.update = update; - this.special = special; + this.security = security; + this.patch = patch; this.build = build; } + VersionInfo(int[] fields) { + this.major = fields[0]; + this.minor = fields[1]; + this.security = fields[2]; + this.patch = fields[3]; + this.build = fields[4]; + } + public boolean equals(VersionInfo v) { return (this.major == v.major && this.minor == v.minor && - this.micro == v.micro && this.update == v.update && - this.special.equals(v.special) && this.build == v.build); + this.security == v.security && this.patch == v.patch && + this.build == v.build); } public String toString() { StringBuilder sb = new StringBuilder(); - sb.append(major + "." + minor + "." + micro); - if (update > 0) { - sb.append("_" + update); + sb.append(major + "." + minor + "." + security); + if (patch > 0) { + sb.append("." + patch); } - if (!special.isEmpty()) { - sb.append(special); - } - sb.append("-b" + build); + sb.append("+" + build); return sb.toString(); } } private static VersionInfo newVersionInfo(String version) throws Exception { - // valid format of the version string is: - // n.n.n[_uu[c]][-]-bxx - int major = 0; - int minor = 0; - int micro = 0; - int update = 0; - String special = ""; - int build = 0; - CharSequence cs = version; - if (cs.length() >= 5) { - if (Character.isDigit(cs.charAt(0)) && cs.charAt(1) == '.' && - Character.isDigit(cs.charAt(2)) && cs.charAt(3) == '.' && - Character.isDigit(cs.charAt(4))) { - major = Character.digit(cs.charAt(0), 10); - minor = Character.digit(cs.charAt(2), 10); - micro = Character.digit(cs.charAt(4), 10); - cs = cs.subSequence(5, cs.length()); - } else if (Character.isDigit(cs.charAt(0)) && - Character.isDigit(cs.charAt(1)) && cs.charAt(2) == '.' && - Character.isDigit(cs.charAt(3))) { - // HSX has nn.n[n] (major.minor) version - major = Integer.valueOf(version.substring(0, 2)).intValue(); - if (Character.isDigit(cs.charAt(4))) { - minor = Integer.valueOf(version.substring(3, 5)).intValue(); - cs = cs.subSequence(5, cs.length()); - } - else { - minor = Character.digit(cs.charAt(3), 10); - cs = cs.subSequence(4, cs.length()); - } - } - if (cs.charAt(0) == '_' && cs.length() >= 3 && - Character.isDigit(cs.charAt(1)) && - Character.isDigit(cs.charAt(2))) { - int nextChar = 3; - String uu = cs.subSequence(1, 3).toString(); - update = Integer.valueOf(uu).intValue(); - if (cs.length() >= 4) { - char c = cs.charAt(3); - if (c >= 'a' && c <= 'z') { - special = Character.toString(c); - nextChar++; - } - } - cs = cs.subSequence(nextChar, cs.length()); - } - if (cs.charAt(0) == '-') { - // skip the first character - // valid format: -bxx or bxx - // non-product VM will have -debug|-release appended - cs = cs.subSequence(1, cs.length()); - String[] res = cs.toString().split("-"); - for (int i = res.length - 1; i >= 0; i--) { - String s = res[i]; - if (s.charAt(0) == 'b') { - try { - build = Integer.parseInt(s.substring(1, s.length())); - break; - } catch (NumberFormatException nfe) { - // ignore - } - } - } + // Version string fromat as defined by JEP-223 + String jep223Pattern = "^([0-9]+)(\\.([0-9]+))?(\\.([0-9]+))?(\\.([0-9]+))?(-([a-zA-Z]+))?(\\.([a-zA-Z]+))?(\\+([0-9]+))?(([-a-zA-Z0-9.]+))?$"; + // Pattern group index for: Major, Minor, Security, Patch, Build + int[] groups = {1, 3, 5, 7, 13}; + // Default values for Major, Minor, Security, Patch, Build + int[] versionFields = {0, 0, 0, 0, 0}; + + Pattern pattern = Pattern.compile(jep223Pattern); + Matcher matcher = pattern.matcher(version); + if (matcher.matches()) { + for (int i = 0; i < versionFields.length; i++) { + String field = matcher.group(groups[i]); + versionFields[i] = (field != null) ? Integer.parseInt(field) : 0; } } - VersionInfo vi = new VersionInfo(major, minor, micro, update, special, build); + + VersionInfo vi = new VersionInfo(versionFields); System.out.printf("newVersionInfo: input=%s output=%s\n", version, vi); return vi; }