You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mikrus-installer/tools/build.js

19 lines
704 B
JavaScript

const fs = require('fs');
const path = require('path');
const regexDevRemove = /(\#dev\-begin.*?\#dev\-end)\n/mgs;
const regexInclude = /(#include\s+(\S+))/mgs;
const srcDir = fs.realpathSync(__dirname + path.sep + '..' + path.sep + 'src')
const baseDir = fs.realpathSync(__dirname + path.sep + '..' )
try {
let data = fs.readFileSync(srcDir + path.sep + 'setup.sh', 'utf8');
data = data.replace(regexDevRemove, '');
data = data.replace(regexInclude, (_, _2, fileName) => {
const included = fs.readFileSync(srcDir + path.sep + fileName, 'utf8');
return included
});
fs.writeFileSync(baseDir + path.sep + 'install.sh', data);
} catch (err) {
console.error(err);
}