133 lines
5.1 KiB
JavaScript
133 lines
5.1 KiB
JavaScript
var gulp = require('gulp'),
|
||
concat = require('gulp-concat'),
|
||
// uglify = require('gulp-uglify'),
|
||
uglify = require('gulp-uglify-es').default,
|
||
rename = require('gulp-rename'),
|
||
jshint = require('gulp-jshint'),
|
||
stripDebug = require("gulp-strip-debug"),//移除console语句
|
||
cleanCSS = require('gulp-clean-css'),
|
||
gutil = require('gulp-util');
|
||
|
||
gulp.task('jslint', function () {
|
||
return gulp.src('fc/js/*.js')
|
||
.pipe(jshint())
|
||
.pipe(jshint.reporter('default'))
|
||
.pipe(notify({message: 'finished jslint'}));
|
||
});
|
||
gulp.task('disthtml', function(){
|
||
return gulp.src(['**/*.html', '!node_modules/**/*', '!dist/**/*'])
|
||
.pipe(gulp.dest('dist'));
|
||
})
|
||
gulp.task('distfccss', function() {
|
||
return gulp.src(['fc/css/**/*.css'])
|
||
.pipe(cleanCSS())
|
||
.pipe(gulp.dest('dist/fc/css'));
|
||
})
|
||
gulp.task('distfcstatic', function() {
|
||
return gulp.src(['fc/resources/**/*'])
|
||
.pipe(gulp.dest('dist/fc/resources'));
|
||
})
|
||
gulp.task('distfcjs', function() {
|
||
return gulp.src(['fc/js/*.js'])
|
||
// .pipe(concat('main.js'))
|
||
// .pipe(rename({suffix: '.min'}))
|
||
//https://github.com/mishoo/UglifyJS2
|
||
.pipe(uglify({
|
||
mangle:true,
|
||
compress:true,
|
||
output: {
|
||
comments: false //保留注释, all: 保留所有,some:只保留license等信息,false: 不保留,正则或者function
|
||
}
|
||
}))
|
||
.pipe(stripDebug())
|
||
.pipe(gulp.dest('dist/fc/js'));
|
||
});
|
||
gulp.task('distfc', ['distfcjs', 'distfccss', 'distfcstatic'])
|
||
|
||
gulp.task('distgbajs', function() {
|
||
return gulp.src(['gba/dist/*.js'])
|
||
// .pipe(concat('main.js'))
|
||
// .pipe(rename({suffix: '.min'}))
|
||
//https://github.com/mishoo/UglifyJS2
|
||
.pipe(uglify({
|
||
mangle:true,
|
||
compress:true,
|
||
output: {
|
||
comments: false //保留注释, all: 保留所有,some:只保留license等信息,false: 不保留,正则或者function
|
||
}
|
||
}))
|
||
.pipe(stripDebug())
|
||
.pipe(gulp.dest('dist/gba/dist'));
|
||
});
|
||
gulp.task('distgbacss', function() {
|
||
return gulp.src(['gba/dist/**/*.css'])
|
||
.pipe(gulp.dest('dist/gba/dist'));
|
||
})
|
||
gulp.task('distgbastatic', function() {
|
||
return gulp.src(['gba/resources/**/*'])
|
||
.pipe(gulp.dest('dist/gba/resources'));
|
||
})
|
||
gulp.task('distgbajsext', function() {
|
||
return gulp.src(['gba/js/**/*'])
|
||
.pipe(gulp.dest('dist/gba/js'));
|
||
})
|
||
gulp.task('distgba', ['distgbajs', 'distgbacss', 'distgbastatic', 'distgbajsext'])
|
||
|
||
gulp.task('distgba2js', function() {
|
||
return gulp.src(['gba2/dist/*.js'])
|
||
// .pipe(concat('main.js'))
|
||
// .pipe(rename({suffix: '.min'}))
|
||
//https://github.com/mishoo/UglifyJS2
|
||
.pipe(uglify({
|
||
mangle:true,
|
||
compress:true,
|
||
output: {
|
||
comments: false //保留注释, all: 保留所有,some:只保留license等信息,false: 不保留,正则或者function
|
||
}
|
||
}))
|
||
.pipe(stripDebug())
|
||
.pipe(gulp.dest('dist/gba2/dist'));
|
||
});
|
||
gulp.task('distgba2css', function() {
|
||
return gulp.src(['gba2/dist/**/*.css'])
|
||
.pipe(cleanCSS())
|
||
.pipe(gulp.dest('dist/gba2/dist'));
|
||
})
|
||
gulp.task('distgba2static', function() {
|
||
return gulp.src(['gba2/resources/**/*'])
|
||
.pipe(gulp.dest('dist/gba2/resources'));
|
||
})
|
||
gulp.task('distgba2bios', function() {
|
||
return gulp.src(['gba2/Binaries/**/*'])
|
||
.pipe(gulp.dest('dist/gba2/Binaries'));
|
||
})
|
||
gulp.task('distgba2jscore', function() {
|
||
return gulp.src(['gba2/IodineGBA/**/*'])
|
||
.pipe(uglify({
|
||
mangle:true,
|
||
compress:true,
|
||
output: {
|
||
comments: false //保留注释, all: 保留所有,some:只保留license等信息,false: 不保留,正则或者function
|
||
}
|
||
}))
|
||
.pipe(gulp.dest('dist/gba2/IodineGBA'));
|
||
})
|
||
gulp.task('distgba2jsuser', function() {
|
||
return gulp.src(['gba2/user_scripts/**/*'])
|
||
.pipe(uglify({
|
||
mangle:true,
|
||
compress:true,
|
||
output: {
|
||
comments: false //保留注释, all: 保留所有,some:只保留license等信息,false: 不保留,正则或者function
|
||
}
|
||
}))
|
||
.pipe(stripDebug())
|
||
.pipe(gulp.dest('dist/gba2/user_scripts'));
|
||
})
|
||
gulp.task('distgba2', ['distgba2js', 'distgba2css', 'distgba2static', 'distgba2bios', 'distgba2jscore', 'distgba2jsuser'])
|
||
gulp.task('assets', function() {
|
||
return gulp.src(['assets/**/*'])
|
||
.pipe(gulp.dest('dist/assets'));
|
||
})
|
||
gulp.task('default', ['disthtml', 'distfc', 'distgba', 'distgba2', 'assets']);
|