mirror of
https://github.com/nodejs/node.git
synced 2025-05-16 07:33:15 +00:00

* Fix #472 Adds support for os/cpu fields in package.json (Adam Blackburn) * Don't use existing pkg if explicit * Install missing deps, even if they are in bundleDependencies * bundle node-gyp * Automatically node-gyp build stuff with a bindings.gyp * Fix #2230 Unpack in place. No folder renaming malarky * Never create un-listable directories * Fix cases where an optionalDependency fails to build * Always ignore .wafpickle-7 files * fix shrinkwrap test * Fix: bundleDependencies being re-installed unnecessarily
43 lines
813 B
JavaScript
43 lines
813 B
JavaScript
|
|
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()
|
|
})
|
|
}
|
|
|
|
}
|