aboutsummaryrefslogtreecommitdiffstats
path: root/ext/-test-/auto_ext.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ext/-test-/auto_ext.rb')
-rw-r--r--ext/-test-/auto_ext.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/ext/-test-/auto_ext.rb b/ext/-test-/auto_ext.rb
new file mode 100644
index 0000000000..5f840c4841
--- /dev/null
+++ b/ext/-test-/auto_ext.rb
@@ -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