[ruby-cvs:73402] nobu:r66301 (trunk): Remove unnecessary require of fileutils

nobu at ruby-lang.org nobu at ruby-lang.org
Mon Dec 10 09:05:43 JST 2018


nobu	2018-12-10 09:05:43 +0900 (Mon, 10 Dec 2018)

  New Revision: 66301

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=66301

  Log:
    Remove unnecessary require of fileutils
    
    Today I updated my ruby core clone, and I run the usual steps to compile
    ruby. When running "make", I run into the following error:
    
    ```
    (... stuff ...)
    encdb.h unchanged
    Traceback (most recent call last):
    5: from ./tool/mkconfig.rb:19:in `<main>'
    4: from ./tool/mkconfig.rb:19:in `require'
    3: from /home/deivid/Code/ruby/lib/fileutils.rb:4:in `<top (required)>'
    2: from /home/deivid/Code/ruby/lib/fileutils.rb:4:in `require'
    1: from /home/deivid/Code/ruby/rbconfig.rb:11:in `<top (required)>'
    /home/deivid/Code/ruby/rbconfig.rb:13:in `<module:RbConfig>': ruby lib version (2.5.0) doesn't match executable version (2.6.0) (RuntimeError)
    uncommon.mk:780: recipe for target '.rbconfig.time' failed
    make: *** [.rbconfig.time] Error 1
    ```
    
    Apparently, the script that generates the root `rbconfig.rb` file requires
    `fileutils`, which in turn requires 'rbconfig' (for mjit-headers it says in a
    comment), which uses the `rbconfig.rb` config file in the root folder if it
    exists. In my case, this file existed but had been generated on 2.5.0, thus
    causing the error.
    
    I think we can avoid this sort of circular dependency by not requiring
    `fileutils`, since it does not seem to be used anywhere in the
    `tool/mkconfig.rb` script since r55338.
    
    [Fix GH-2045]
    
    From: David Rodr?\195?\173guez <deivid.rodriguez at riseup.net>

  Modified files:
    trunk/tool/mkconfig.rb


More information about the ruby-cvs mailing list