File: envutil.rb

package info (click to toggle)
jruby 1.5.6-5
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 43,808 kB
  • sloc: ruby: 398,491; java: 170,144; yacc: 3,782; xml: 2,529; sh: 299; tcl: 40; makefile: 28; ansic: 23
file content (28 lines) | stat: -rw-r--r-- 652 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
module EnvUtil
  def rubybin
    if ruby = ENV["RUBY"]
      return ruby
    end
    ruby = "ruby"
    rubyexe = ruby+".exe"
    3.times do
      if File.exist? ruby and File.executable? ruby and !File.directory? ruby
        return File.expand_path(ruby)
      end
      if File.exist? rubyexe and File.executable? rubyexe
        return File.expand_path(ruby)
      end
      ruby = File.join("..", ruby)
    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