summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/node-gyp/lib/clean.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/node_modules/node-gyp/lib/clean.js')
-rw-r--r--deps/npm/node_modules/node-gyp/lib/clean.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/deps/npm/node_modules/node-gyp/lib/clean.js b/deps/npm/node_modules/node-gyp/lib/clean.js
new file mode 100644
index 000000000..a8efc1bd7
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/lib/clean.js
@@ -0,0 +1,42 @@
+
+module.exports = exports = clean
+
+exports.usage = 'Removes any generated build files and the "out" dir'
+
+/**
+ * Module dependencies.
+ */
+
+var rm = require('rimraf')
+ , asyncEmit = require('./util/asyncEmit')
+ , createHook = require('./util/hook')
+
+
+function clean (gyp, argv, callback) {
+
+ // Remove the 'build' dir
+ var buildDir = 'build'
+ , emitter
+
+ createHook('gyp-clean.js', function (err, _e) {
+ if (err) return callback(err)
+ emitter = _e
+ asyncEmit(emitter, 'before', function (err) {
+ if (err) return callback(err)
+ doClean()
+ })
+ })
+
+ function doClean () {
+ gyp.verbose('removing "build" directory')
+ rm(buildDir, after)
+ }
+
+ function after () {
+ asyncEmit(emitter, 'after', function (err) {
+ if (err) return callback(err)
+ callback()
+ })
+ }
+
+}