55 lines
1.6 KiB
JavaScript
Executable File
55 lines
1.6 KiB
JavaScript
Executable File
const gulp = require('gulp');
|
|
const yargs = require('yargs');
|
|
const Haxe = require('../tasks/haxe');
|
|
const FlashPlayer = require('../tasks/flashplayer');
|
|
const Neko = require('../tasks/neko');
|
|
const version = require('./version');
|
|
const prepare = require('./prepare');
|
|
const debug = require('../tasks/debug');
|
|
|
|
|
|
const generate = () => function generate() {
|
|
return new Haxe().haxelib([
|
|
'run', 'protohx', 'generate', 'protohx.json'
|
|
]);
|
|
};
|
|
|
|
const build = () => function build() {
|
|
const argv = yargs.argv;
|
|
return gulp.src('.')
|
|
.pipe(new Haxe().build({
|
|
platform: 'neko',
|
|
version: version,
|
|
lib: [
|
|
'protohx',
|
|
'orm',
|
|
'haxework:git',
|
|
'haxe-crypto',
|
|
'hxsignal'
|
|
],
|
|
cp: [
|
|
'src/common/haxe',
|
|
'src/server/haxe',
|
|
'src-gen/haxe',
|
|
],
|
|
main: 'ru.m.tankz.server.Server',
|
|
outputFile: 'tankz.n',
|
|
debug: argv.dev,
|
|
values: {
|
|
proto_debug: true
|
|
}
|
|
}))
|
|
.pipe(gulp.dest('target'));
|
|
};
|
|
|
|
const test = (build) => function test() {
|
|
const argv = yargs.argv;
|
|
return build()
|
|
.pipe(new Neko().run(argv.dev))
|
|
.pipe(debug());
|
|
};
|
|
|
|
|
|
exports['server'] = gulp.series(prepare(Haxe.ID), generate(), build());
|
|
exports['server:test'] = gulp.series(prepare(Haxe.ID, FlashPlayer.ID), generate(), test(build()));
|