@@ -14,23 +14,24 @@ var utils = require('./utils')
1414
1515module . exports = build
1616
17- function build ( entry , opts ) {
18- var basedir = utils . dirname ( entry )
19- var outdir = path . join ( basedir , 'dist' )
17+ function build ( entry , outdir , opts ) {
18+ var bankaiOpts = {
19+ logStream : pumpify ( pinoColada ( ) , process . stdout ) ,
20+ assert : false ,
21+ watch : false
22+ }
23+ var compiler = bankai ( entry , bankaiOpts )
24+ var log = compiler . log
25+
26+ if ( ! outdir ) {
27+ outdir = path . join ( compiler . dirname , 'dist' )
28+ }
2029
2130 mkdirp ( outdir , function ( err ) {
2231 if ( err ) return console . error ( err )
2332
24- var bankaiOpts = {
25- logStream : pumpify ( pinoColada ( ) , process . stdout ) ,
26- assert : false ,
27- watch : false
28- }
29- var compiler = bankai ( entry , bankaiOpts )
30- var log = compiler . log
31-
3233 log . info ( 'Compiling & compressing files\n' )
33- created ( basedir , outdir + '/' )
34+ created ( compiler . dirname , outdir + '/' )
3435
3536 compiler . on ( 'error' , function ( topic , sub , err ) {
3637 if ( err . pretty ) log . error ( err . pretty )
@@ -69,7 +70,7 @@ function build (entry, opts) {
6970 // TODO: It'd be sick if we could optimize our paths to assets,
7071 // add etags to our tags and put them in the right dir.
7172 function copyFile ( src , done ) {
72- var dest = path . join ( outdir , path . relative ( basedir , src ) )
73+ var dest = path . join ( outdir , path . relative ( compiler . dirname , src ) )
7374 var dirname = utils . dirname ( dest )
7475
7576 if ( dirname === dest ) {
@@ -94,7 +95,7 @@ function build (entry, opts) {
9495 } )
9596 function fin ( err ) {
9697 if ( err ) return done ( err )
97- created ( basedir , src )
98+ created ( compiler . dirname , dest )
9899 done ( )
99100 }
100101 }
@@ -194,7 +195,7 @@ function build (entry, opts) {
194195 function raw ( done ) {
195196 fs . writeFile ( filename , buffer , function ( err ) {
196197 if ( err ) return done ( err )
197- created ( basedir , filename )
198+ created ( compiler . dirname , filename )
198199 done ( )
199200 } )
200201 } ,
@@ -204,7 +205,7 @@ function build (entry, opts) {
204205 var outfile = filename + '.gz'
205206 fs . writeFile ( outfile , compressed , function ( err ) {
206207 if ( err ) return done ( err )
207- created ( basedir , outfile )
208+ created ( compiler . dirname , outfile )
208209 done ( )
209210 } )
210211 } )
@@ -215,7 +216,7 @@ function build (entry, opts) {
215216 var outfile = filename + '.deflate'
216217 fs . writeFile ( outfile , compressed , function ( err ) {
217218 if ( err ) return done ( err )
218- created ( basedir , outfile )
219+ created ( compiler . dirname , outfile )
219220 done ( )
220221 } )
221222 } )
@@ -225,7 +226,7 @@ function build (entry, opts) {
225226 var outfile = filename + '.br'
226227 fs . writeFile ( outfile , compressed , function ( err ) {
227228 if ( err ) return done ( err )
228- created ( basedir , outfile )
229+ created ( compiler . dirname , outfile )
229230 done ( )
230231 } )
231232 } ) . catch ( done )
0 commit comments