Parse examples and build external modules on install

This commit is contained in:
Tim Schaub
2014-10-23 13:30:51 -06:00
parent 01b64bc655
commit 4785001548
8 changed files with 55 additions and 14 deletions
+12 -2
View File
@@ -71,9 +71,17 @@ function buildModules(modules, callback) {
}
if (require.main === module) {
/**
* Build all external modules.
* @param {function(Error)} callback Called with any error.
*/
function main(callback) {
var modules = getExternalModules();
buildModules(modules, function(err) {
buildModules(modules, callback);
}
if (require.main === module) {
main(function(err) {
if (err) {
process.stderr.write(err.message + '\n');
process.exit(1);
@@ -82,3 +90,5 @@ if (require.main === module) {
}
});
}
module.exports = main;
+1 -1
View File
@@ -127,7 +127,7 @@ function getDependencies(config, exports, callback) {
};
} else {
options = {
lib: ['src/**/*.js'],
lib: ['src/**/*.js', 'build/ol.ext/*.js'],
cwd: root
};
}
+17
View File
@@ -0,0 +1,17 @@
var async = require('async');
var buildExt = require('./build-ext');
var parseExamples = require('./parse-examples');
/**
* Parse examples and build external modules.
*/
async.waterfall([
parseExamples,
buildExt
], function(err) {
if (err) {
process.stderr.write(err + '\n');
process.exit(1);
}
});
+21 -10
View File
@@ -137,14 +137,25 @@ function writeExampleList(exampleInfos, callback) {
/**
* List examples, parse them, and write example list.
* @param {function(Error)} callback Called with any error.
*/
async.waterfall([
listExamples,
parseExamples,
writeExampleList
], function(err) {
if (err) {
process.stderr.write(err + '\n');
process.exit(1);
}
});
function main(callback) {
async.waterfall([
listExamples,
parseExamples,
writeExampleList
], callback);
}
if (require.main === module) {
main(function(err) {
if (err) {
process.stderr.write(err.message + '\n');
process.exit(1);
} else {
process.exit(0);
}
});
}
module.exports = main;
+1
View File
@@ -22,6 +22,7 @@ var createServer = exports.createServer = function(callback) {
var manager = new closure.Manager({
lib: [
'src/**/*.js',
'build/ol.ext/*.js',
'test/spec/**/*.test.js'
],
main: 'examples/*.js'