From: Maciej MaƂecki Date: Fri, 21 Dec 2012 01:56:47 +0000 (+0100) Subject: build: allow to specify custom tags X-Git-Tag: v0.9.5~34 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f84bf5b6b174af0639813c9f3167f3593f2c5eb4;p=platform%2Fupstream%2Fnodejs.git build: allow to specify custom tags When building custom `node` versions (e.g., floating features/fixes from different versions) it's often useful to specify a custom tag which easily identifies build when invoking `node -v`. Introduce a way to specify this tag in `node_version.h` file or by running `./configure --tag=""`. Insert it right after the patch version (and before `-pre`, if build is not a release). Closes #4452. --- diff --git a/configure b/configure index a97e964..36dbdce 100755 --- a/configure +++ b/configure @@ -265,6 +265,11 @@ parser.add_option("--xcode", dest="use_xcode", help="Generate build files for use with xcode") +parser.add_option("--tag", + action="store", + dest="tag", + help="Custom build tag") + (options, args) = parser.parse_args() @@ -490,6 +495,8 @@ def configure_node(o): else: o['variables']['node_use_perfctr'] = 'false' + o['variables']['node_tag'] = options.tag or '' + def configure_libz(o): o['variables']['node_shared_zlib'] = b(options.shared_zlib) diff --git a/node.gyp b/node.gyp index 8035464..5b82114 100644 --- a/node.gyp +++ b/node.gyp @@ -142,6 +142,7 @@ 'NODE_WANT_INTERNALS=1', 'ARCH="<(target_arch)"', 'PLATFORM="<(OS)"', + 'NODE_TAG="<(node_tag)"', ], 'conditions': [ diff --git a/src/node_version.h b/src/node_version.h index 442cfce..e6e200f 100644 --- a/src/node_version.h +++ b/src/node_version.h @@ -25,6 +25,11 @@ #define NODE_MAJOR_VERSION 0 #define NODE_MINOR_VERSION 9 #define NODE_PATCH_VERSION 5 + +#ifndef NODE_TAG +# define NODE_TAG "" +#endif + #define NODE_VERSION_IS_RELEASE 0 #ifndef NODE_STRINGIFY @@ -35,11 +40,13 @@ #if NODE_VERSION_IS_RELEASE # define NODE_VERSION_STRING NODE_STRINGIFY(NODE_MAJOR_VERSION) "." \ NODE_STRINGIFY(NODE_MINOR_VERSION) "." \ - NODE_STRINGIFY(NODE_PATCH_VERSION) + NODE_STRINGIFY(NODE_PATCH_VERSION) \ + NODE_TAG #else # define NODE_VERSION_STRING NODE_STRINGIFY(NODE_MAJOR_VERSION) "." \ NODE_STRINGIFY(NODE_MINOR_VERSION) "." \ - NODE_STRINGIFY(NODE_PATCH_VERSION) "-pre" + NODE_STRINGIFY(NODE_PATCH_VERSION) \ + NODE_TAG "-pre" #endif #define NODE_VERSION "v" NODE_VERSION_STRING