Skip to content

Commit

Permalink
Prefer RbConfig.ruby over the 3.times fallback (#8691)
Browse files Browse the repository at this point in the history
It seems saner to use RbConfig.ruby than using ruby in a random ancestor
directory.
  • Loading branch information
k0kubun committed Oct 18, 2023
1 parent 7a3a98e commit 6c46ccf
Showing 1 changed file with 14 additions and 15 deletions.
29 changes: 14 additions & 15 deletions tool/lib/envutil.rb
Expand Up @@ -15,23 +15,22 @@
module EnvUtil
def rubybin
if ruby = ENV["RUBY"]
return ruby
end
ruby = "ruby"
exeext = RbConfig::CONFIG["EXEEXT"]
rubyexe = (ruby + exeext if exeext and !exeext.empty?)
3.times do
if File.exist? ruby and File.executable? ruby and !File.directory? ruby
return File.expand_path(ruby)
end
if rubyexe and File.exist? rubyexe and File.executable? rubyexe
return File.expand_path(rubyexe)
end
ruby = File.join("..", ruby)
end
if defined?(RbConfig.ruby)
ruby
elsif defined?(RbConfig.ruby)
RbConfig.ruby
else
ruby = "ruby"
exeext = RbConfig::CONFIG["EXEEXT"]
rubyexe = (ruby + exeext if exeext and !exeext.empty?)
3.times do
if File.exist? ruby and File.executable? ruby and !File.directory? ruby
return File.expand_path(ruby)
end
if rubyexe and File.exist? rubyexe and File.executable? rubyexe
return File.expand_path(rubyexe)
end
ruby = File.join("..", ruby)
end
"ruby"
end
end
Expand Down

0 comments on commit 6c46ccf

Please sign in to comment.