96 lines
2.7 KiB
JavaScript
96 lines
2.7 KiB
JavaScript
|
/*jshint node:true */
|
||
|
|
||
|
'use strict';
|
||
|
|
||
|
module.exports = function (grunt) {
|
||
|
grunt.initConfig({
|
||
|
repo: 'atom/atom-shell',
|
||
|
releases: 'https://api.github.com/repos/<%= repo %>/releases',
|
||
|
pkg: grunt.file.readJSON('package.json'),
|
||
|
|
||
|
meta: {
|
||
|
CompanyName: '<%= pkg.author.name %>',
|
||
|
FileDescription: '<%= pkg.name %>',
|
||
|
FileVersion: '<%= pkg.version %>',
|
||
|
InternalName: '<%= pkg.name.toLowerCase() %>.exe',
|
||
|
LegalCopyright: 'Copyright (C) <%= grunt.template.' +
|
||
|
'today("yyyy") %> <%= pkg.author.name %>',
|
||
|
OriginalFilename: '<%= pkg.name.toLowerCase() %>.exe',
|
||
|
ProductName: '<%= pkg.name %>',
|
||
|
ProductVersion: '<%= pkg.version %>'
|
||
|
},
|
||
|
|
||
|
files: [
|
||
|
'css/**',
|
||
|
'js/**',
|
||
|
'images/**',
|
||
|
'App.js',
|
||
|
'index.html',
|
||
|
'LICENSE',
|
||
|
'main.js',
|
||
|
'package.json'
|
||
|
],
|
||
|
|
||
|
paths: {
|
||
|
resources: {
|
||
|
win: 'win/resources',
|
||
|
mac: 'mac/Atom.app/Contents/Resources',
|
||
|
linux: 'linux/resources'
|
||
|
},
|
||
|
|
||
|
originalExe: {
|
||
|
win: 'win/atom.exe',
|
||
|
mac: 'mac/Atom.app',
|
||
|
linux: 'linux/atom'
|
||
|
},
|
||
|
|
||
|
exe: {
|
||
|
win: 'win/<%= pkg.name.toLowerCase() %>.exe',
|
||
|
mac: 'mac/<%= pkg.name %>.app',
|
||
|
linux: 'linux/<%= pkg.name.toLowerCase() %>'
|
||
|
}
|
||
|
},
|
||
|
|
||
|
platforms: {
|
||
|
win: 'win32-ia32',
|
||
|
mac: 'darwin-x64',
|
||
|
linux: 'linux-x64'
|
||
|
}
|
||
|
});
|
||
|
|
||
|
// load tasks defined in grunt/
|
||
|
grunt.loadTasks('grunt');
|
||
|
|
||
|
// create aliases
|
||
|
grunt.registerTask(
|
||
|
'build',
|
||
|
'Fetch last shell release and build application',
|
||
|
function (platform) {
|
||
|
var tasks = [
|
||
|
'clean:clean-build',
|
||
|
'mkdir:create-build',
|
||
|
'http:find-asset',
|
||
|
'curl:fetch-asset',
|
||
|
'unzip:extract-asset',
|
||
|
'clean:clean-default',
|
||
|
'rename:rename-exe',
|
||
|
'rebrand:rebrand-exe',
|
||
|
'copy:copy-files'
|
||
|
], length = tasks.length, i;
|
||
|
|
||
|
for (i = 0; i < length; i += 1) {
|
||
|
tasks[i] = tasks[i] + ':' + platform;
|
||
|
}
|
||
|
|
||
|
grunt.task.run(tasks);
|
||
|
}
|
||
|
);
|
||
|
|
||
|
grunt.registerTask(
|
||
|
'auto-update',
|
||
|
'Automatically rebuild application whenever a file changes',
|
||
|
function (platform) {
|
||
|
grunt.task.run('watch:watch-changes:' + platform);
|
||
|
}
|
||
|
);
|
||
|
};
|