39 lines
1.1 KiB
Python
Executable File
39 lines
1.1 KiB
Python
Executable File
#! /usr/bin/env node
|
|
|
|
var child_process = require('child_process');
|
|
var fs = require('fs');
|
|
|
|
var buildDir = process.env.BUILD_DIR || 'build';
|
|
|
|
if (!fs.existsSync(buildDir)){
|
|
fs.mkdirSync(buildDir);
|
|
}
|
|
|
|
// Add `node_modules/.bin` to PATH
|
|
process.env.PATH = process.cwd() + '/node_modules/.bin:' + process.env.PATH;
|
|
|
|
console.log('Building xterm.js into ' + buildDir);
|
|
|
|
// Build ES2015 modules into ES5 form, then concatenate them,
|
|
// then remove unused require calls and save in output file with source map.
|
|
console.log(' - Building ' + buildDir + '/xterm.js...');
|
|
|
|
var jsBuildCmd = 'browserify src/xterm.js -s Terminal -t [ babelify --presets [ es2015 ] ] --debug | ';
|
|
jsBuildCmd += 'derequire | exorcist ' + buildDir + '/xterm.js.map > ' + buildDir + '/xterm.js';
|
|
|
|
var jsBuildProcess = child_process.execSync(jsBuildCmd);
|
|
|
|
if (jsBuildProcess.status) {
|
|
console.log(jsBuildProcess.error);
|
|
}
|
|
|
|
console.log(' OK.');
|
|
|
|
// Copy CSS into $BUILD_DIR
|
|
console.log(' - Building ' + buildDir + '/xterm.css...');
|
|
|
|
fs.createReadStream('src/xterm.css').pipe(
|
|
fs.createWriteStream(buildDir + '/xterm.css')
|
|
);
|
|
console.log(' OK.');
|