Built motion from commit 6a09e18b.|2.6.11
[motion2.git] / legacy-libs / node-pre-gyp / lib / reveal.js
diff --git a/legacy-libs/node-pre-gyp/lib/reveal.js b/legacy-libs/node-pre-gyp/lib/reveal.js
new file mode 100644 (file)
index 0000000..13d2f72
--- /dev/null
@@ -0,0 +1,33 @@
+"use strict";
+
+module.exports = exports = reveal;
+
+exports.usage = 'Reveals data on the versioned binary';
+
+var fs = require('fs');
+var versioning = require('./util/versioning.js');
+var napi = require('./util/napi.js');
+
+function unix_paths(key, val) {
+    return val && val.replace ? val.replace(/\\/g, '/') : val;
+}
+
+function reveal(gyp, argv, callback) {
+    var package_json = JSON.parse(fs.readFileSync('./package.json'));
+    var napi_build_version = napi.get_napi_build_version_from_command_args(argv);
+    var opts = versioning.evaluate(package_json, gyp.opts, napi_build_version);
+    var hit = false;
+    // if a second arg is passed look to see
+    // if it is a known option
+    //console.log(JSON.stringify(gyp.opts,null,1))
+    var remain = gyp.opts.argv.remain[gyp.opts.argv.remain.length-1];
+    if (remain && opts.hasOwnProperty(remain)) {
+        console.log(opts[remain].replace(/\\/g, '/'));
+        hit = true;
+    }
+    // otherwise return all options as json
+    if (!hit) {
+        console.log(JSON.stringify(opts,unix_paths,2));
+    }
+    return callback();
+}