@@ -185,16 +185,19 @@ def ruby_launcher
185
185
return @ruby_launcher if defined? @ruby_launcher
186
186
187
187
@ruby_name ||= ENV [ 'RUBY_BIN' ] || 'jvm'
188
- @ ruby_launcher = if @ruby_name == 'ruby'
189
- ENV [ 'RBENV_ROOT' ] ? `rbenv which ruby` . chomp : which ( 'ruby' )
190
- elsif File . executable? ( @ruby_name )
191
- @ruby_name
192
- else
193
- "#{ TRUFFLERUBY_DIR } /mxbuild/truffleruby-#{ @ruby_name } /#{ language_dir } /ruby/bin/ruby"
194
- end
188
+ ruby_launcher = if @ruby_name == 'ruby'
189
+ ENV [ 'RBENV_ROOT' ] ? `rbenv which ruby` . chomp : which ( 'ruby' )
190
+ elsif File . executable? ( @ruby_name )
191
+ @ruby_name
192
+ else
193
+ "#{ TRUFFLERUBY_DIR } /mxbuild/truffleruby-#{ @ruby_name } /#{ language_dir } /ruby/bin/ruby"
194
+ end
195
195
196
- raise "The Ruby executable #{ @ruby_launcher } does not exist" unless File . exist? ( @ruby_launcher )
197
- raise "The Ruby executable #{ @ruby_launcher } is not executable" unless File . executable? ( @ruby_launcher )
196
+ raise "The Ruby executable #{ ruby_launcher } does not exist" unless File . exist? ( ruby_launcher )
197
+ ruby_launcher = File . realpath ( ruby_launcher )
198
+
199
+ raise "The Ruby executable #{ ruby_launcher } is not executable" unless File . executable? ( ruby_launcher )
200
+ @ruby_launcher = ruby_launcher
198
201
199
202
unless @silent
200
203
shortened_path = @ruby_launcher . sub ( %r[^#{ Regexp . escape TRUFFLERUBY_DIR } /] , '' ) . sub ( %r[/bin/ruby$] , '' ) . sub ( %r[/#{ language_dir } /ruby$] , '' )
@@ -210,7 +213,6 @@ def ruby_launcher
210
213
ENV [ 'RUBY_BIN' ] = ruby_launcher
211
214
@ruby_launcher
212
215
end
213
-
214
216
alias_method :require_ruby_launcher! , :ruby_launcher
215
217
216
218
def truffleruby_native!
@@ -239,8 +241,7 @@ def truffleruby_compiler?
239
241
return @truffleruby_compiler = true if truffleruby_native?
240
242
241
243
# Detect if the compiler is present by reading the $graalvm_home/release file
242
- # Use realpath to always use the executable in languages/ruby/bin/
243
- graalvm_home = File . expand_path ( "../../../..#{ '/..' * language_dir . count ( '/' ) } " , File . realpath ( ruby_launcher ) )
244
+ graalvm_home = File . expand_path ( "../../../..#{ '/..' * language_dir . count ( '/' ) } " , ruby_launcher )
244
245
@truffleruby_compiler = File . readlines ( "#{ graalvm_home } /release" ) . grep ( /^COMMIT_INFO=/ ) . any? do |line |
245
246
line . include? ( '"compiler":' ) || line . include? ( "'compiler':" )
246
247
end
0 commit comments