You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
813 B

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()
})
}
}