aboutsummaryrefslogtreecommitdiffhomepage
path: root/ruby/Rakefile
diff options
context:
space:
mode:
authorGravatar Isaiah Peng <issaria@gmail.com>2014-12-24 15:48:41 +0100
committerGravatar Isaiah Peng <issaria@gmail.com>2015-03-10 23:14:08 +0100
commit27e2b57830c328b83286e055752bf92790587953 (patch)
tree6cf4de2cbcb24d53b2475ed15d6a61a98712685c /ruby/Rakefile
parenta5f7bb8ebb60d636c21c18ad2ffeda80e8f80a48 (diff)
add jruby support by protobuf-java reflection API
Diffstat (limited to 'ruby/Rakefile')
-rw-r--r--ruby/Rakefile26
1 files changed, 19 insertions, 7 deletions
diff --git a/ruby/Rakefile b/ruby/Rakefile
index ae7d8059..7c1d8495 100644
--- a/ruby/Rakefile
+++ b/ruby/Rakefile
@@ -1,20 +1,32 @@
-require "rake/extensiontask"
+require "rubygems"
+require "rubygems/package_task"
+require "rake/extensiontask" unless RUBY_PLATFORM == "java"
require "rake/testtask"
spec = Gem::Specification.load("google-protobuf.gemspec")
-Rake::ExtensionTask.new("protobuf_c", spec) do |ext|
- ext.ext_dir = "ext/google/protobuf_c"
- ext.lib_dir = "lib/google"
-end
+if RUBY_PLATFORM == "java"
+ task :clean do
+ system("mvn clean")
+ end
-Rake::TestTask.new(:test => :build) do |t|
- t.test_files = FileList["tests/*.rb"]
+ task :compile do
+ system("mvn package")
+ end
+else
+ Rake::ExtensionTask.new("protobuf_c", spec) do |ext|
+ ext.ext_dir = "ext/google/protobuf_c"
+ ext.lib_dir = "lib/google"
+ end
end
Gem::PackageTask.new(spec) do |pkg|
end
+Rake::TestTask.new(:test => :build) do |t|
+ t.test_files = FileList["tests/*.rb"]
+end
+
task :build => [:clean, :compile]
task :default => [:build]