|
1 | 1 | 'use strict'; |
2 | 2 |
|
3 | | -/** |
4 | | - * Add `./output` to path i.o. to load modules. |
5 | | - * Warning: This is a hack |
6 | | - * https://gist.github.com/branneman/8048520#6-the-hack |
7 | | - */ |
8 | | -process.env.NODE_PATH = __dirname + '/output'; |
9 | | -require('module').Module._initPaths(); |
10 | | - |
11 | 3 | var gulp = require('gulp') |
12 | 4 | , purs = require('gulp-purescript') |
13 | | - , Promise = require('bluebird') |
14 | | - , del = Promise.promisifyAll(require('del')) |
| 5 | + , run = require('gulp-run') |
15 | 6 | , _ = require('lodash') |
16 | 7 | ; |
17 | 8 |
|
18 | | -var src = [ 'src/**/*.purs' ] |
19 | | - , deps = [ 'bower_components/purescript-*/src/**/*.purs' ] |
| 9 | +var src = [ 'src/**/*.purs' |
| 10 | + , 'bower_components/purescript-*/src/**/*.purs' |
| 11 | + ] |
| 12 | + , ffi = [ 'src/**/*.js' |
| 13 | + , 'bower_components/purescript-*/src/**/*.js' |
| 14 | + ] |
20 | 15 | , example = [ 'example/example.purs' ] |
21 | | - , output = [ 'output' ] |
22 | 16 | ; |
23 | 17 |
|
24 | 18 | gulp.task('psci', function() { |
25 | | - return gulp |
26 | | - .src(_.flatten([ src, deps ], false)) |
27 | | - .pipe(purs.dotPsci()) |
28 | | - ; |
| 19 | + return purs.psci({ |
| 20 | + src: src |
| 21 | + , ffi: ffi |
| 22 | + }).pipe(gulp.dest('.')); |
29 | 23 | }); |
30 | 24 |
|
31 | 25 | gulp.task('make', [ 'psci' ], function() { |
32 | | - return gulp |
33 | | - .src(_.flatten([ src, deps ], false)) |
34 | | - .pipe(purs.pscMake({})) |
35 | | - ; |
36 | | -}); |
37 | | - |
38 | | -gulp.task('docs', function() { |
39 | | - return gulp |
40 | | - .src(src) |
41 | | - .pipe(purs.pscDocs({})) |
42 | | - .pipe(gulp.dest('README.md')) |
43 | | - ; |
| 26 | + return purs.psc({ |
| 27 | + src: src |
| 28 | + , ffi: ffi |
| 29 | + }); |
44 | 30 | }); |
45 | 31 |
|
46 | 32 | gulp.task('make:example', function() { |
47 | | - return gulp |
48 | | - .src(_.flatten([ src, example, deps ], false)) |
49 | | - .pipe(purs.pscMake({})) |
50 | | - ; |
| 33 | + return purs.psc({ |
| 34 | + src: _.flatten([ src, example ]) |
| 35 | + , ffi: ffi |
| 36 | + }); |
51 | 37 | }); |
52 | 38 |
|
53 | | -gulp.task('example', ['make:example'], function() { |
54 | | - require('Example.Main').main(); |
| 39 | +gulp.task('example', ['make:example'], function () { |
| 40 | + return purs.pscBundle({ |
| 41 | + src: 'output/**/*.js' |
| 42 | + , main: 'Example.Main' |
| 43 | + }); |
55 | 44 | }); |
0 commit comments