var fs = require('fs')
  , buildOpts = {
      printStdout: true
    , printStderr: true
    };

task('build', ['browserify', 'minify'], function () {
  console.log('Build completed.');
});

desc('Cleans browerified/minified files and package files');
task('clean', ['clobber'], function () {
  jake.rmRf('./ejs.js');
  jake.rmRf('./ejs.min.js');
});

task('browserify', {async: true}, function () {
  jake.exec('./node_modules/browserify/bin/cmd.js lib/ejs.js > ejs.js',
      buildOpts, function () {
    console.log('Browserification completed.');
    setTimeout(complete, 0);
  });
});

task('minify', {async: true}, function () {
  jake.exec('./node_modules/uglify-js/bin/uglifyjs ejs.js > ejs.min.js',
      buildOpts, function () {
    console.log('Minification completed.');
    setTimeout(complete, 0);
  });
});

publishTask('ejs', ['build'], function () {
  this.packageFiles.include([
    'Jakefile'
  , 'README.md'
  , 'LICENSE'
  , 'package.json'
  , 'ejs.js'
  , 'ejs.min.js'
  , 'lib/**'
  , 'test/**'
  ]);
});


