[前][次][番号順一覧][スレッド一覧]

ruby-changes:71693

From: Alan <ko1@a...>
Date: Tue, 12 Apr 2022 02:28:24 +0900 (JST)
Subject: [ruby-changes:71693] 5f1f8c244d (master): Fix fake.rb RUBY_DESCRIPTION faking for JITs

https://git.ruby-lang.org/ruby.git/commit/?id=5f1f8c244d

From 5f1f8c244da69a69ff62475be4c022f2c7e850d4 Mon Sep 17 00:00:00 2001
From: Alan Wu <XrXr@u...>
Date: Mon, 11 Apr 2022 13:28:07 -0400
Subject: Fix fake.rb RUBY_DESCRIPTION faking for JITs

Previously, `make test-spec` was not printing the description with +YJIT
even when YJIT was indeed enabled. It was confusing on CI. `fake.rb` was
changing the `RUBY_DESCRIPTION` constant incorrectly.

I suppose `make test-spec` mostly needs the `mkmf` faking and not the
faking of `RUBY_.*` constants, so maybe there is an opportunity to simplify
in the future.
---
 template/fake.rb.in | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/template/fake.rb.in b/template/fake.rb.in
index 7af17fa344..aead377ed8 100644
--- a/template/fake.rb.in
+++ b/template/fake.rb.in
@@ -18,6 +18,7 @@ if inc = arg['i'] https://github.com/ruby/ruby/blob/trunk/template/fake.rb.in#L18
     version[n] = src.value(v)
   end
   arg['RUBY_DESCRIPTION_WITH_MJIT'] = src.value('description_with_mjit')
+  arg['RUBY_DESCRIPTION_WITH_YJIT'] = src.value('description_with_yjit')
 end
 %>baseruby="<%=arg['BASERUBY']%>"
 _\
@@ -34,9 +35,14 @@ class Object https://github.com/ruby/ruby/blob/trunk/template/fake.rb.in#L35
   CROSS_COMPILING = RUBY_PLATFORM
   constants.grep(/^RUBY_/) {|n| remove_const n}
 % arg['versions'].each {|n, v|
-  <%=n%> = <%if n=='RUBY_DESCRIPTION' %>RubyVM.const_defined?(:JIT) && RubyVM::MJIT.enabled? ?
-    <%=arg['RUBY_DESCRIPTION_WITH_JIT'].inspect%> :
-    <%end%><%=v.inspect%>
+  <%=n%> = <%if n=='RUBY_DESCRIPTION' %>case
+    when RubyVM.const_defined?(:MJIT) && RubyVM::MJIT.enabled?
+      <%=arg['RUBY_DESCRIPTION_WITH_MJIT'].inspect%>
+    when RubyVM.const_defined?(:YJIT) && RubyVM::YJIT.enabled?
+      <%=arg['RUBY_DESCRIPTION_WITH_YJIT'].inspect%>
+    else
+      <%=v.inspect%>
+    end<%else%><%=v.inspect%><%end%>
 % }
 end
 builddir = File.dirname(File.expand_path(__FILE__))
-- 
cgit v1.2.1


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]