[ruby-dev:47853] [ruby-trunk - Bug #9160] configureに--with-rubylibprefixを指定するとrbconfigのprefixが空文字になる
From:
"nagachika (Tomoyuki Chikanaga)" <nagachika00@...>
Date:
2013-12-14 16:31:00 UTC
List:
ruby-dev #47853
Issue #9160 has been updated by nagachika (Tomoyuki Chikanaga).
Backport changed from 1.9.3: UNKNOWN, 2.0.0: UNKNOWN to 1.9.3: DONTNEED, 2.0.0: DONTNEED
----------------------------------------
Bug #9160: configureに--with-rubylibprefixを指定するとrbconfigのprefixが空文字になる
https://bugs.ruby-lang.org/issues/9160#change-43679
Author: kimuraw (Wataru Kimura)
Status: Closed
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: build
Target version:
ruby -v: ruby 2.1.0dev (2013-11-26 trunk 40765) [x86_64-darwin13.0]
Backport: 1.9.3: DONTNEED, 2.0.0: DONTNEED
=begin
== 現象
configureに--with-rubylibprefixを指定したとき、
RbConfig::CONFIG['prefix']および関連するbindirなどのprefixが空文字になってしまいます。
% ruby -rrbconfig -e 'p RbConfig::CONFIG["prefix"]'
""
% ruby -rrbconfig -e 'p RbConfig::CONFIG["bindir"]'
"/bin"
% ruby -rrbconfig -e 'p RbConfig.ruby'
"/bin/ruby"
2.1.0-preview2とtrunk r43859で発生することを確認しています。
2.0.0-p353と1.9.3-p484では起きていません。
rbconfig.rbのはじめのほうでTOPDIRを定義しているところで
TOPDIR = File.dirname(__FILE__).chomp!("/usr/local/lib/ruby21/2.1.0/x86_64-darwin13.0")
のようにprefix付きになってしまうことが原因のようです。
configureで--with-rubylibprefxを指定しなかった場合は、
chomp!("/lib/ruby/...")のようにprefixを除いた文字列になっています。
== 再現手順
% ./configure --with-rubylibprefix=/usr/local/lib/ruby21
% make ruby
% grep -n TOPDIR ./rbconfig.rb
9: TOPDIR = File.dirname(__FILE__).chomp!("/usr/local/lib/ruby21/2.1.0/x86_64-darwin13.0")
19: CONFIG["prefix"] = (TOPDIR || DESTDIR + "/usr/local")
%
=end
--
http://bugs.ruby-lang.org/