From 232439460f760c3caaa59c6b27f33d47a43c3654 Mon Sep 17 00:00:00 2001 From: Sebastian McKenzie Date: Wed, 4 Nov 2015 00:00:18 +0000 Subject: [PATCH] switch to gulp for build process --- Gulpfile.js | 25 +++++++++++++++++++++++++ Makefile | 6 +++--- doc/ast/flow.md | 0 doc/ast/jsx.md | 0 package.json | 5 +++++ scripts/build.sh | 10 ---------- 6 files changed, 33 insertions(+), 13 deletions(-) create mode 100644 Gulpfile.js create mode 100644 doc/ast/flow.md create mode 100644 doc/ast/jsx.md delete mode 100755 scripts/build.sh diff --git a/Gulpfile.js b/Gulpfile.js new file mode 100644 index 0000000000..5c1c608105 --- /dev/null +++ b/Gulpfile.js @@ -0,0 +1,25 @@ +var cached = require("gulp-cached"); +var rename = require("gulp-rename"); +var babel = require("gulp-babel"); +var watch = require("gulp-watch"); +var gulp = require("gulp"); + +var scripts = "./packages/*/src/**/*.js"; + +gulp.task("default", ["build"]); + +gulp.task("build", function () { + return gulp.src(scripts) + .pipe(cached("babel")) + .pipe(babel()) + .pipe(rename(function (path) { + path.dirname = path.dirname.replace(/^([^\\]+)\/src/, "$1/lib"); + })) + .pipe(gulp.dest("packages")); +}); + +gulp.task("watch", ["build"], function (callback) { + watch(scripts, function () { + gulp.start("build"); + }); +}); diff --git a/Makefile b/Makefile index ff58877b1e..6200021894 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,7 @@ export NODE_ENV = test .PHONY: clean test test-cov test-clean test-travis test-browser publish build bootstrap publish-core publish-runtime build-website build-core watch-core build-core-test clean-core prepublish build: clean - ./scripts/build.sh + gulp build build-dist: build cd packages/babel-browser; \ @@ -16,7 +16,7 @@ build-dist: build node scripts/build-dist.js watch: clean - scripts/build.sh --watch + gulp watch lint: node node_modules/.bin/eslint packages/*/src @@ -35,7 +35,7 @@ test: lint test-cov: clean BABEL_ENV=test; \ - make build + gulp build ./scripts/test-cov.sh test-travis: bootstrap lint build test diff --git a/doc/ast/flow.md b/doc/ast/flow.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/doc/ast/jsx.md b/doc/ast/jsx.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/package.json b/package.json index 5a490a1796..464a093b94 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,11 @@ "es5-shim": "^4.1.7", "eslint": "^1.1.0", "fs-readdir-recursive": "^0.1.2", + "gulp": "^3.9.0", + "gulp-babel": "^5.3.0", + "gulp-cached": "^1.1.0", + "gulp-rename": "^1.2.2", + "gulp-watch": "^4.3.5", "istanbul": "^0.3.5", "lodash": "^3.10.0", "matcha": "^0.6.0", diff --git a/scripts/build.sh b/scripts/build.sh deleted file mode 100755 index 8c546756c3..0000000000 --- a/scripts/build.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh -set -e - -for f in packages/*; do - if [ -d "$f/src" ]; then - node node_modules/babel/bin/babel "$f/src" --out-dir "$f/lib" --copy-files $1 & - fi -done - -wait