auto_ext.rb

* ext/-test-/auto_ext.rb (auto_ext): utitily method to create
  extension libraries for tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2016-05-29 03:08:45 +00:00
parent a552fa2d66
commit a594ca98f2
18 changed files with 47 additions and 107 deletions

10
ext/-test-/auto_ext.rb Normal file
View file

@ -0,0 +1,10 @@
# frozen_string_literal: false
def auto_ext(feat = $0[%r[/ext/-test-/(.*)/extconf.rb\z], 1], inc: false)
$INCFLAGS << " -I$(topdir) -I$(top_srcdir)" if inc
$srcs = Dir[File.join($srcdir, "*.{#{SRC_EXT.join(%q{,})}}")]
inits = $srcs.map {|s| File.basename(s, ".*")}
inits.delete("init")
inits.map! {|s|"X(#{s})"}
$defs << "-DTEST_INIT_FUNCS(X)=\"#{inits.join(' ')}\""
create_makefile(feat)
end