diff options
Diffstat (limited to 'template')
-rw-r--r-- | template/extinit.c.tmpl | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/template/extinit.c.tmpl b/template/extinit.c.tmpl new file mode 100644 index 0000000000..592eb0452f --- /dev/null +++ b/template/extinit.c.tmpl @@ -0,0 +1,16 @@ +%# -*- C -*- +#include "ruby/ruby.h" + +#define init(func, name) { \ + extern void func(void); \ + ruby_init_ext(name, func); \ +} + +void ruby_init_ext(const char *name, void (*init)(void)); + +void Init_ext(void) +{ +% ARGV.each do |n| + init(Init_<%=n.sub(/,(.*)/, ', "\1.so"')%>); +% end +} |