build,win: fix node.exe resource version

When MSBuild invokes rc.exe, it passes NODE_TAG unstringified, but
passes it correctly to cl.exe. Hence, this workaround was made to
apply only to the resource file.

Fixes: https://github.com/nodejs/node/issues/2963
PR-URL: https://github.com/nodejs/node/pull/3053
Reviewed-By: Alexis Campailla <orangemocha@nodejs.org>
Reviewed-By: Johan Bergström <bugs@bergstroem.nu>
pull/3053/head
João Reis 2015-09-23 13:33:09 +01:00
parent d32363ff20
commit a6aab43093
2 changed files with 11 additions and 2 deletions

View File

@ -18,12 +18,21 @@
# else # else
# define NODE_TAG "-pre" # define NODE_TAG "-pre"
# endif # endif
#else
// NODE_TAG is passed without quotes when rc.exe is run from msbuild
# define NODE_EXE_VERSION NODE_STRINGIFY(NODE_MAJOR_VERSION) "." \
NODE_STRINGIFY(NODE_MINOR_VERSION) "." \
NODE_STRINGIFY(NODE_PATCH_VERSION) \
NODE_STRINGIFY(NODE_TAG)
#endif #endif
# define NODE_VERSION_STRING NODE_STRINGIFY(NODE_MAJOR_VERSION) "." \ # define NODE_VERSION_STRING NODE_STRINGIFY(NODE_MAJOR_VERSION) "." \
NODE_STRINGIFY(NODE_MINOR_VERSION) "." \ NODE_STRINGIFY(NODE_MINOR_VERSION) "." \
NODE_STRINGIFY(NODE_PATCH_VERSION) \ NODE_STRINGIFY(NODE_PATCH_VERSION) \
NODE_TAG NODE_TAG
#ifndef NODE_EXE_VERSION
# define NODE_EXE_VERSION NODE_VERSION_STRING
#endif
#define NODE_VERSION "v" NODE_VERSION_STRING #define NODE_VERSION "v" NODE_VERSION_STRING

View File

@ -32,8 +32,8 @@ BEGIN
VALUE "CompanyName", "Node.js" VALUE "CompanyName", "Node.js"
VALUE "ProductName", "Node.js" VALUE "ProductName", "Node.js"
VALUE "FileDescription", "Node.js: Server-side JavaScript" VALUE "FileDescription", "Node.js: Server-side JavaScript"
VALUE "FileVersion", "NODE_VERSION_STRING" VALUE "FileVersion", NODE_EXE_VERSION
VALUE "ProductVersion", "NODE_VERSION_STRING" VALUE "ProductVersion", NODE_EXE_VERSION
VALUE "OriginalFilename", "node.exe" VALUE "OriginalFilename", "node.exe"
VALUE "InternalName", "node" VALUE "InternalName", "node"
VALUE "LegalCopyright", "Copyright Node.js contributors. MIT license." VALUE "LegalCopyright", "Copyright Node.js contributors. MIT license."