summaryrefslogtreecommitdiffhomepage
path: root/tasks/mrblib.rake
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2020-11-21 15:36:46 +0900
committerKOBAYASHI Shuji <[email protected]>2020-11-21 15:36:46 +0900
commit551bf0c635ca5dda1741a39a92de528dc82e90d6 (patch)
tree4dcf4e7850157dc45e0be9a49851a9564f96a402 /tasks/mrblib.rake
parentfb028b47aa6fb730f3e5b866d51577636b9a1ba3 (diff)
downloadmruby-551bf0c635ca5dda1741a39a92de528dc82e90d6.tar.gz
mruby-551bf0c635ca5dda1741a39a92de528dc82e90d6.zip
Move some `.rake` files to `tasks` directory for consistency
Diffstat (limited to 'tasks/mrblib.rake')
-rw-r--r--tasks/mrblib.rake30
1 files changed, 30 insertions, 0 deletions
diff --git a/tasks/mrblib.rake b/tasks/mrblib.rake
new file mode 100644
index 000000000..7231b63bc
--- /dev/null
+++ b/tasks/mrblib.rake
@@ -0,0 +1,30 @@
+MRuby.each_target do
+ src = "#{build_dir}/mrblib/mrblib.c"
+ obj = objfile(src.ext)
+ rbfiles = Dir["#{MRUBY_ROOT}/mrblib/*.rb"].sort!
+
+ self.libmruby_objs << obj
+
+ file obj => src
+ file src => [mrbcfile, __FILE__, *rbfiles] do |t|
+ mkdir_p File.dirname(t.name)
+ File.open(t.name, 'w') do |f|
+ _pp "GEN", "mrblib/*.rb", "#{t.name.relative_path}"
+ f.puts %Q[/*]
+ f.puts %Q[ * This file is loading the mrblib]
+ f.puts %Q[ *]
+ f.puts %Q[ * IMPORTANT:]
+ f.puts %Q[ * This file was generated!]
+ f.puts %Q[ * All manual changes will get lost.]
+ f.puts %Q[ */]
+ mrbc.run f, rbfiles, 'mrblib_proc'
+ f.puts <<INIT_END
+void
+mrb_init_mrblib(mrb_state *mrb)
+{
+ mrb_load_proc(mrb, mrblib_proc);
+}
+INIT_END
+ end
+ end
+end