diff options
author | Josh Haberman <jhaberman@gmail.com> | 2016-06-16 11:59:08 -0700 |
---|---|---|
committer | Josh Haberman <jhaberman@gmail.com> | 2016-06-16 11:59:08 -0700 |
commit | 1337486755518e8df4388463ab71fdc955e5a680 (patch) | |
tree | afa18284f1716607435e014fb40fe680a8d830d9 /js/gulpfile.js | |
parent | f180ef63985fb410dceda1e299020ee4ebd696e0 (diff) | |
download | protobuf-1337486755518e8df4388463ab71fdc955e5a680.tar.gz protobuf-1337486755518e8df4388463ab71fdc955e5a680.tar.bz2 protobuf-1337486755518e8df4388463ab71fdc955e5a680.zip |
JS: import well-known types from google-protobuf package.
Diffstat (limited to 'js/gulpfile.js')
-rw-r--r-- | js/gulpfile.js | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/js/gulpfile.js b/js/gulpfile.js index c5220153..d94d4a14 100644 --- a/js/gulpfile.js +++ b/js/gulpfile.js @@ -8,6 +8,20 @@ function exec(command, cb) { var protoc = process.env.PROTOC || '../src/protoc'; +var wellKnownTypes = [ + '../src/google/protobuf/any.proto', + '../src/google/protobuf/api.proto', + '../src/google/protobuf/descriptor.proto', + '../src/google/protobuf/duration.proto', + '../src/google/protobuf/empty.proto', + '../src/google/protobuf/field_mask.proto', + '../src/google/protobuf/source_context.proto', + '../src/google/protobuf/struct.proto', + '../src/google/protobuf/timestamp.proto', + '../src/google/protobuf/type.proto', + '../src/google/protobuf/wrappers.proto', +]; + gulp.task('genproto_closure', function (cb) { exec(protoc + ' --js_out=library=testproto_libs,binary:. -I ../src -I . *.proto ../src/google/protobuf/descriptor.proto', function (err, stdout, stderr) { @@ -18,7 +32,16 @@ gulp.task('genproto_closure', function (cb) { }); gulp.task('genproto_commonjs', function (cb) { - exec('mkdir -p commonjs_out && ' + protoc + ' --js_out=import_style=commonjs,binary:commonjs_out -I ../src -I commonjs -I . *.proto commonjs/test*/*.proto ../src/google/protobuf/descriptor.proto', + exec('mkdir -p commonjs_out && ' + protoc + ' --js_out=import_style=commonjs,binary:commonjs_out -I ../src -I commonjs -I . *.proto commonjs/test*/*.proto ../src/google/protobuf/descriptor.proto' + wellKnownTypes.join(' '), + function (err, stdout, stderr) { + console.log(stdout); + console.log(stderr); + cb(err); + }); +}); + +gulp.task('genproto_wellknowntypes', function (cb) { + exec(protoc + ' --js_out=import_style=commonjs,binary:. -I ../src ' + wellKnownTypes.join(' '), function (err, stdout, stderr) { console.log(stdout); console.log(stderr); @@ -26,7 +49,7 @@ gulp.task('genproto_commonjs', function (cb) { }); }); -gulp.task('dist', function (cb) { +gulp.task('dist', ['genproto_wellknowntypes'], function (cb) { // TODO(haberman): minify this more aggressively. // Will require proper externs/exports. exec('./node_modules/google-closure-library/closure/bin/calcdeps.py -i message.js -i binary/reader.js -i binary/writer.js -i commonjs/export.js -p . -p node_modules/google-closure-library/closure -o compiled --compiler_jar node_modules/google-closure-compiler/compiler.jar > google-protobuf.js', |