1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

extinit.c.tmpl: drop after dot

* template/extinit.c.tmpl: drop rest from the first dot in the
  base name of a feature is ignored since r30464.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2017-01-23 02:19:00 +00:00
parent 7c30524bce
commit ea87854c52
2 changed files with 7 additions and 6 deletions

View file

@ -645,7 +645,7 @@ $extobjs ||= []
$extpath ||= []
$extflags ||= ""
$extlibs ||= []
extinits = {}
extinits = []
unless $extlist.empty?
list = $extlist.dup
built = []
@ -660,7 +660,7 @@ unless $extlist.empty?
next
end
base = File.basename(feature)
extinits[base] = feature
extinits << feature
$extobjs << format("ext/%s/%s.%s", target, base, $LIBEXT)
built << target
end
@ -731,7 +731,7 @@ if $configure_only and $command_output
mf.macro "EXTLIBS", $extlibs
mf.macro "EXTSO", extso
mf.macro "EXTLDFLAGS", $extflags.split
mf.macro "EXTINITS", extinits.map {|k, v| "#{k},#{v}"}
mf.macro "EXTINITS", extinits
submakeopts = []
if enable_config("shared", $enable_shared)
submakeopts << 'DLDOBJS="$(EXTOBJS) $(EXTENCS)"'

View file

@ -1,16 +1,17 @@
%# -*- C -*-
% extinits = ARGV.map {|n| [n[%r[[^/.]+(?=\.[^/]*)?\z]], n]}
#include "ruby/ruby.h"
#define init(func, name) { \
extern void func(void); \
ruby_init_ext(name, func); \
ruby_init_ext(name".so", 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"')%>);
% extinits.each do |f, n|
init(Init_<%=f%>, <%=n.dump%>);
% end
}