summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej MaƂecki <me@mmalecki.com>2012-12-21 02:56:47 +0100
committerNathan Rajlich <nathan@tootallnate.net>2012-12-21 12:44:33 -0800
commitf84bf5b6b174af0639813c9f3167f3593f2c5eb4 (patch)
tree55b5c2185d043296fdcf031d595a09670d350951
parent70eb227e80f10cf51288a5a3018e858480099df4 (diff)
downloadandroid-node-v8-f84bf5b6b174af0639813c9f3167f3593f2c5eb4.tar.gz
android-node-v8-f84bf5b6b174af0639813c9f3167f3593f2c5eb4.tar.bz2
android-node-v8-f84bf5b6b174af0639813c9f3167f3593f2c5eb4.zip
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="<tag>"`. Insert it right after the patch version (and before `-pre`, if build is not a release). Closes #4452.
-rwxr-xr-xconfigure7
-rw-r--r--node.gyp1
-rw-r--r--src/node_version.h11
3 files changed, 17 insertions, 2 deletions
diff --git a/configure b/configure
index a97e964f7b..36dbdce35a 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 8035464356..5b82114c72 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 442cfce16f..e6e200f7d1 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