[Win] Modify version numbering scheme to support 5-tuple versions
authorbfulgham@apple.com <bfulgham@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 30 Jul 2014 16:35:17 +0000 (16:35 +0000)
committerbfulgham@apple.com <bfulgham@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 30 Jul 2014 16:35:17 +0000 (16:35 +0000)
commitaa9be6b3d214eb6d8c2462514ea02a07d532c749
treed2417f776add7e010a9a1cb6265cbf2040c7bd1b
parenta36fe8ac40242ce264f7b53dcf9f9e9931663f12
[Win] Modify version numbering scheme to support 5-tuple versions
https://bugs.webkit.org/show_bug.cgi?id=135400
<rdar://problem/17849033>

Reviewed by David Kilzer.

Source/JavaScriptCore:
* JavaScriptCore.vcxproj/JavaScriptCorePostBuild.cmd: Use the
new version-stamp.pl script to version JavaScriptCore.dll.

Source/WebKit:
* WebKit.vcxproj/WebKit/WebKitPostBuild.cmd: Use the new
version-stamp.pl script to version JavaScriptCore.dll.

Source/WTF:
* WTF.vcxproj/WTFPostBuild.cmd: Use new version-stamp.pl script
to version WTF.dll.
* WTF.vcxproj/WTFPreBuild.cmd: Make sure we have created the
appropriate version resource during builds.

Tools:
Update test cases to recognize that we can only support Major
values from 0-65535, Minor values from 0-64, Tiny values from 0-999,
Micro values from 0-64, and Nano values from 0-999.

* Scripts/webkitperl/auto-version_unittest/autoVersionTests.pl: Update
test expectations for physical limits.

WebKitLibraries:
Revise the auto-version.pl script so that it generates a set of packed
version tuples that allow us to map 5-tuple versions into something
that will work with Windows' 3-tuple version structure.

* win/tools/scripts/auto-version.pl:
(packTwoValues): Added,
(splitVersion): Revised to return packed combination of minor-tiny and
micro-nano to be used as "MINOR" and "TINY" portion of version.
(splitBuildMajorVersion): Deleted.
* win/tools/scripts/version-stamp.pl: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@171798 268f45cc-cd09-0410-ab3c-d52691b4dbfc
12 files changed:
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/JavaScriptCore.vcxproj/JavaScriptCorePostBuild.cmd
Source/WTF/ChangeLog
Source/WTF/WTF.vcxproj/WTFPostBuild.cmd
Source/WTF/WTF.vcxproj/WTFPreBuild.cmd
Source/WebKit/ChangeLog
Source/WebKit/WebKit.vcxproj/WebKit/WebKitPostBuild.cmd
Tools/ChangeLog
Tools/Scripts/webkitperl/auto-version_unittest/autoVersionTests.pl
WebKitLibraries/ChangeLog
WebKitLibraries/win/tools/scripts/auto-version.pl
WebKitLibraries/win/tools/scripts/version-stamp.pl [new file with mode: 0644]