summaryrefslogtreecommitdiff
path: root/test/ruby/envutil.rb
blob: 09c8e3f7f4a4b9b7f2ac33af4722119749dadea2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
module EnvUtil
  def rubybin
    if ruby = ENV["RUBY"]
      return ruby
    end
    miniruby = "miniruby"
    3.times do
      if File.exist? miniruby or File.exist? miniruby+".exe"
        return File.expand_path(miniruby)
      end
      miniruby = File.join("..", miniruby)
    end
    begin
      require "rbconfig"
      File.join(
        Config::CONFIG["bindir"],
	Config::CONFIG["ruby_install_name"] + Config::CONFIG["EXEEXT"]
      )
    rescue LoadError
      "ruby"
    end
  end
  module_function :rubybin
end