From cb2ad2c439faa832a6b3a51e8933ec00047e2edf Mon Sep 17 00:00:00 2001 From: Masaki Muranaka Date: Thu, 7 Mar 2013 14:18:42 +0900 Subject: Add Support to build loadable modules defined in mrbgems. --- tasks/mrbgem_spec.rake | 5 +++++ tasks/mruby_build.rake | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'tasks') diff --git a/tasks/mrbgem_spec.rake b/tasks/mrbgem_spec.rake index 5b01bc79b..6a8eafcae 100644 --- a/tasks/mrbgem_spec.rake +++ b/tasks/mrbgem_spec.rake @@ -28,6 +28,9 @@ module MRuby attr_accessor :test_objs, :test_rbfiles, :test_args attr_accessor :test_preload + attr_accessor :bins + alias :bin= :bins= + attr_block MRuby::Build::COMMANDS def initialize(name, &block) @@ -59,6 +62,8 @@ module MRuby @test_preload = 'test/assert.rb' @test_args = {} + @bins = [] + instance_eval(&@initializer) if !name || !licenses || !authors diff --git a/tasks/mruby_build.rake b/tasks/mruby_build.rake index 812e861a7..10125701e 100644 --- a/tasks/mruby_build.rake +++ b/tasks/mruby_build.rake @@ -174,8 +174,9 @@ module MRuby puts " Binaries: #{@bins.join(', ')}" unless @bins.empty? unless @gems.empty? puts " Included Gems:" - @gems.map(&:name).each do |name| - puts " #{name}" + @gems.map do |gem| + puts " #{gem.name}" + puts " - Binaries: #{gem.bins.join(', ')}" unless gem.bins.empty? end end puts "================================================" -- cgit v1.2.3 From a0102317b448f3bb8c69019fe9732f9d9f07f087 Mon Sep 17 00:00:00 2001 From: Masaki Muranaka Date: Thu, 7 Mar 2013 16:02:20 +0900 Subject: Apply @masuidrive's review point. @bins should be Array. --- tasks/mrbgem_spec.rake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'tasks') diff --git a/tasks/mrbgem_spec.rake b/tasks/mrbgem_spec.rake index 6a8eafcae..649f99d0e 100644 --- a/tasks/mrbgem_spec.rake +++ b/tasks/mrbgem_spec.rake @@ -29,7 +29,6 @@ module MRuby attr_accessor :test_preload attr_accessor :bins - alias :bin= :bins= attr_block MRuby::Build::COMMANDS @@ -81,6 +80,10 @@ module MRuby define_gem_init_builder end + def self.bin=(bin) + @bins = [bin].flatten + end + def build_dir "#{build.build_dir}/mrbgems/#{name}" end -- cgit v1.2.3