[gulp] added project

This commit is contained in:
2018-04-04 17:58:14 +03:00
parent b12b26b87e
commit c70eed8a06
6 changed files with 332 additions and 65 deletions

View File

@@ -1,9 +1,9 @@
"use strict";
const os = require('os');
const gulp = require('gulp');
const clean = require('gulp-clean');
const Config = require('./config.json');
const prepare = require('./build/prepare');
const Project = require('./build/project');
const version = require('./build/version');
const {Sdk} = require('gulp-haxetool');
@@ -15,20 +15,58 @@ exports.clean = () => {
return gulp.src('target/*', {read: false}).pipe(clean());
};
const merge = (value) => {
if (typeof value === 'string') {
value = require(value);
}
for (let key in value) if (value.hasOwnProperty(key)) {
exports[key] = value[key];
}
};
/**
* ToDo:
* libs versions from package.json
* lib in openfl build
* cp in openfl build
* main in openfl build
* install libs in builder prepare
*
* run generate proto from prepare.js
*/
exports.update = prepare.update;
merge('./build/prepare');
merge('./build/client');
merge('./build/editor');
merge('./build/server');
/**
* client
*/
const client = new Project(new Project.Config({
name: 'client',
version: version
}), [
Project.Platform.FLASH,
Project.Platform.HTML5,
Project.Platform.LINUX,
]).bind(module);
/**
* editor
*/
const editor = new Project(new Project.Config({
name: 'editor',
version: version,
values: {build_editor: true}
}), [
Project.Platform.FLASH,
]).bind(module);
exports.default = gulp.series(exports.clean, exports.client, exports.server);
/**
* server
*/
const server = new Project(new Project.Config({
name: 'server',
version: version,
lib: [
'protohx:0.4.6',
'haxework:git',
'haxe-crypto:0.0.7',
'yield:1.1.2',
],
cp: [
'src/common/haxe',
'src/server/haxe',
'src-gen/haxe',
],
main: 'ru.m.tankz.server.Server',
}), [
Project.Platform.NEKO,
]).bind(module);