diff options
| author | take_cheeze <[email protected]> | 2014-05-08 22:19:14 +0900 |
|---|---|---|
| committer | take_cheeze <[email protected]> | 2014-05-08 22:19:14 +0900 |
| commit | 64300b2c43e040ae2cd63bd0ef72a10a54db6631 (patch) | |
| tree | 5d32debfc93c7a1511d90ca45967c7572ac5be2d /tasks/mrbgems.rake | |
| parent | c071ad13a9df20e8e030320eef0a483bf4e64932 (diff) | |
| download | mruby-64300b2c43e040ae2cd63bd0ef72a10a54db6631.tar.gz mruby-64300b2c43e040ae2cd63bd0ef72a10a54db6631.zip | |
Add API `mrb_atexit()`.
`mrb_final_mrbgems` will be called as mrb_state atexit function.
Maybe useful in #1844.
Diffstat (limited to 'tasks/mrbgems.rake')
| -rw-r--r-- | tasks/mrbgems.rake | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/tasks/mrbgems.rake b/tasks/mrbgems.rake index b57f318e0..95eddc56b 100644 --- a/tasks/mrbgems.rake +++ b/tasks/mrbgems.rake @@ -26,14 +26,15 @@ MRuby.each_target do f.puts %Q[] f.puts %Q[#{gems.map{|g| "void GENERATED_TMP_mrb_%s_gem_final(mrb_state* mrb);" % g.funcname}.join("\n")}] f.puts %Q[] - f.puts %Q[void] - f.puts %Q[mrb_init_mrbgems(mrb_state *mrb) {] - f.puts %Q[#{gems.map{|g| "GENERATED_TMP_mrb_%s_gem_init(mrb);" % g.funcname}.join("\n")}] + f.puts %Q[static void] + f.puts %Q[mrb_final_mrbgems(mrb_state *mrb) {] + f.puts %Q[#{gems.map{|g| "GENERATED_TMP_mrb_%s_gem_final(mrb);" % g.funcname}.join("\n")}] f.puts %Q[}] f.puts %Q[] f.puts %Q[void] - f.puts %Q[mrb_final_mrbgems(mrb_state *mrb) {] - f.puts %Q[#{gems.map{|g| "GENERATED_TMP_mrb_%s_gem_final(mrb);" % g.funcname}.join("\n")}] + f.puts %Q[mrb_init_mrbgems(mrb_state *mrb) {] + f.puts %Q[#{gems.map{|g| "GENERATED_TMP_mrb_%s_gem_init(mrb);" % g.funcname}.join("\n")}] + f.puts %Q[mrb_atexit(mrb, mrb_final_mrbgems);] f.puts %Q[}] end end |
