ruby-changes:74222
From: Nobuyoshi <ko1@a...>
Date: Mon, 24 Oct 2022 17:48:55 +0900 (JST)
Subject: [ruby-changes:74222] 711b2ed5fe (master): Make the timestamp path correspond to the bundled target path
https://git.ruby-lang.org/ruby.git/commit/?id=711b2ed5fe From 711b2ed5fe7abcb44a2432cb5f0e70861bf95aef Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada <nobu@r...> Date: Mon, 24 Oct 2022 12:49:45 +0900 Subject: Make the timestamp path correspond to the bundled target path So different timestamps for different paths will be used. Extentions paths in bundled gems contain `ruby_version`, which includes the ABI version, and the same timestamp file for different paths resulted in build failures when it changed. --- ext/extmk.rb | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/ext/extmk.rb b/ext/extmk.rb index 939eb73565..73ee71fd37 100755 --- a/ext/extmk.rb +++ b/ext/extmk.rb @@ -536,9 +536,14 @@ extend Module.new { https://github.com/ruby/ruby/blob/trunk/ext/extmk.rb#L536 def timestamp_file(name, target_prefix = nil) if @gemname and name == '$(TARGET_SO_DIR)' - name = "$(arch)/gems/#{@gemname}#{target_prefix}" + gem = true + name = "$(gem_platform)/$(ruby_version)/gems/#{@gemname}#{target_prefix}" end - super.sub(%r[/\.extout\.(?:-\.)?], '/.') + path = super.sub(%r[/\.extout\.(?:-\.)?], '/.') + if gem + nil while path.sub!(%r[/\.(gem_platform|ruby_version)\.-(?=\.)], '/$(\1)/') + end + path end def configuration(srcdir) -- cgit v1.2.3 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/