From: nobu.nakada@... Date: 2000-07-25T01:53:00+09:00 Subject: [ruby-dev:10377] Re: environment variables なかだです。 At Mon, 24 Jul 2000 20:30:24 +0900, WATANABE Hirofumi wrote: > : なるほど。では RUBY_LIB あたりだけを変える方向で、こんなのではどうでし > :ょう。 > > あ, これはいいかも. CROSS のほうでも試してみます. あれではダメでした。config.h 用と rbconfig.rb 用に分けてやる 必要があります。とりあえず 7/24 時点での結論としてはこんな風。 mkconfig.rb の方は小松さんのパッチも含んでます。 diff -pruPX .excludes current/configure.in current+/configure.in --- current/configure.in Mon Jul 3 18:08:37 2000 +++ current+/configure.in Mon Jul 24 22:53:48 2000 @@ -865,13 +866,22 @@ test "$program_suffix" != NONE && ri_suffix=$program_suffix RUBY_INSTALL_NAME="${ri_prefix}ruby${ri_suffix}" -RUBY_LIB_PREFIX="${prefix}/lib/ruby" +case "$target_os" in + cygwin*|mingw*|*djgpp*) + RUBY_LIB_PREFIX="/lib/ruby" + SITEDIR='/lib/ruby/site_ruby' + ;; + *) + RUBY_LIB_PREFIX="${prefix}/lib/ruby" + SITEDIR='${prefix}/lib/ruby/site_ruby' + ;; +esac RUBY_LIB_PATH="${RUBY_LIB_PREFIX}/${MAJOR}.${MINOR}" sitedir='${prefix}/lib/ruby/site_ruby' AC_ARG_WITH(sitedir, [--with-sitedir=DIR site libraries in DIR [PREFIX/lib/ruby/site_ruby]], [sitedir=$withval]) -RUBY_SITE_LIB_PATH=`eval "echo ${sitedir}"` +RUBY_SITE_LIB_PATH=`eval "echo ${SITEDIR}"` RUBY_SITE_LIB_PATH2="${RUBY_SITE_LIB_PATH}/${MAJOR}.${MINOR}" AC_DEFINE_UNQUOTED(RUBY_LIB, "${RUBY_LIB_PATH}") diff -pruPX .excludes current/mkconfig.rb current+/mkconfig.rb --- current/mkconfig.rb Mon Jun 19 12:37:52 2000 +++ current+/mkconfig.rb Mon Jul 24 22:58:51 2000 @@ -3,6 +3,7 @@ require File.dirname($0)+"/lib/ftools" rbconfig_rb = ARGV[0] || 'rbconfig.rb' +srcdir = ARGV[1] File.makedirs(File.dirname(rbconfig_rb), true) version = VERSION @@ -23,6 +24,7 @@ module Config print " DESTDIR = '' if not defined? DESTDIR\n CONFIG = {}\n" v_fast = [] v_others = [] +has_srcdir = false has_version = false File.foreach "config.status" do |$_| next if /^#/ @@ -58,12 +60,17 @@ File.foreach "config.status" do |$_| end elsif /^ac_given_srcdir=(.*)/ v_fast << " CONFIG[\"srcdir\"] = \"" + File.expand_path($1) + "\"\n" + has_srcdir = true elsif /^ac_given_INSTALL=(.*)/ v_fast << " CONFIG[\"INSTALL\"] = " + $1 + "\n" end # break if /^CEOF/ end +if not has_srcdir + v_fast << " CONFIG[\"srcdir\"] = \"" + File.expand_path(srcdir) + "\"\n" +end + if not has_version VERSION.scan(/(\d+)\.(\d+)\.(\d+)/) { print " CONFIG[\"MAJOR\"] = \"" + $1 + "\"\n" @@ -74,7 +81,9 @@ end v_fast.collect! do |x| if /"prefix"/ === x - x.sub(/= /, '= DESTDIR + ') + prefix = Regexp.quote('/lib/ruby/' + RUBY_VERSION.sub(/\.\d+$/, '') + '/' + RUBY_PLATFORM) + puts " TOPDIR = File.dirname(__FILE__).sub!(%r'#{prefix}\\Z', '')" + x.sub(/= (.*)/, '= (TOPDIR || DESTDIR + \1)') else x end -- --- 僕の前にBugはない。 --- 僕の後にBugはできる。 中田 伸悦