Issue #15425 has been updated by k0kubun (Takashi Kokubun).


> why the file is versioned 

Basically rubyarchhdrdir directory should protect the header from different Ruby versions, but you almost proved that it's necessary when you passed `--with-rubyhdrdir=/usr/include --with-rubyarchhdrdir=/usr/include`. At least 2.6's header can't be used from 2.7.

> why it is not stored in the versioned directory alongside all other internal Ruby headers

IIRC, nobu chose the directory to support multi-arch (or universal?) build, and it seems to follow his intention as he quoted.

> The header should be probably placed on the same location as "config.h" for consistency. The ruby-2.6.0/ruby-2.6.0/x86_64-linux should not be created at all.

I have no idea why ruby-2.6.0/ruby-2.6.0/x86_64-linux is created, but rb_mjit_min_header-2.6.0.h is not placed in that directory and so I believe it should be a separated ticket.

> it still does not respect options such as "--with-ruby-version"

So maybe respecting --with-ruby-version in the header file name (or removing the version fragment) is the only thing we need to discuss/implement here?

----------------------------------------
Bug #15425: Store MJIT header into Ruby versioned directory.
https://bugs.ruby-lang.org/issues/15425#change-83073

* Author: vo.x (Vit Ondruch)
* Status: Open
* Priority: Normal
* Assignee: k0kubun (Takashi Kokubun)
* Target version: 
* ruby -v: ruby 2.6.0rc2 (2018-12-15 trunk 66408) [x86_64-linux]
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
This is a followup of #15391 which fixes JIT to respect the configuration options. However, I still wonder, why the file is versioned and why it is not stored in the versioned directory alongside all other internal Ruby headers. I believe, that while it now respects the header configuration flags, it still does not respect options such as "--with-ruby-version"



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>