[#10226] 組み込み Ruby — Kazuhiro Yoshida <moriq.kazuhiro@...>

もりきゅうです。

17 messages 2000/07/05
[#10230] Re: 組み込み Ruby — matz@... (Yukihiro Matsumoto) 2000/07/05

まつもと ゆきひろです

[#10231] Re: 組み込み Ruby — Kazuhiro Yoshida <moriq.kazuhiro@...> 2000/07/05

もりきゅうです。

[#10237] Re: 組み込み Ruby — matz@... (Yukihiro Matsumoto) 2000/07/06

まつもと ゆきひろです

[#10278] Re: environment variables — WATANABE Hirofumi <eban@...>

わたなべです.

162 messages 2000/07/11
[#10285] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/07/11

なかだです。

[#10306] Re: environment variables — nobu.nakada@... 2000/07/12

なかだです。

[#10355] Re: environment variables — nobu.nakada@... 2000/07/20

なかだです。

[#10359] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/23

小松です。

[#10360] Re: environment variables — nobu.nakada@... 2000/07/23

なかだです。

[#10361] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/23

小松です。

[#10370] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/07/24

なかだです。

[#10374] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/24

小松です。

[#10376] Re: environment variables — nobu.nakada@... 2000/07/24

なかだです。

[#10380] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/25

小松です。

[#10381] Re: environment variables — matz@... (Yukihiro Matsumoto) 2000/07/25

まつもと ゆきひろです

[#10386] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/07/25

なかだです。

[#10397] Re: environment variables — matz@... (Yukihiro Matsumoto) 2000/07/25

まつもと ゆきひろです

[#10399] Re: environment variables — nobu.nakada@... 2000/07/25

なかだです。

[#10407] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/26

小松です。

[#10409] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/26

小松です。

[#10416] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/07/26

なかだです。

[#10421] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/26

小松です。

[#10435] Re: environment variables — nobu.nakada@... 2000/07/27

なかだです。

[#10442] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/28

小松です。

[#10444] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/07/28

なかだです。

[#10446] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/28

小松です。

[#10453] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/07/31

なかだです。

[#10459] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/31

小松です。

[#10464] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/07/31

なかだです。

[#10466] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/07/31

小松です。

[#10472] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/01

小松です。

[#10474] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/01

なかだです。

[#10475] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/01

小松です。

[#10476] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/01

小松です。

[#10480] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/01

なかだです。

[#10483] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/01

小松です。

[#10485] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/01

なかだです。

[#10489] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/01

小松です。

[#10490] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/01

なかだです。

[#10491] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/01

小松です。

[#10492] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/01

なかだです。

[#10493] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/01

小松です。

[#10494] Re: environment variables — matz@... (Yukihiro Matsumoto) 2000/08/01

まつもと ゆきひろです

[#10495] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/02

なかだです。

[#10506] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/02

小松です。

[#10507] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/02

なかだです。

[#10508] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/02

小松です。

[#10509] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/02

なかだです。

[#10511] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/02

小松です。

[#10512] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/02

小松です。

[#10515] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/03

なかだです。

[#10516] Re: environment variables — Katsuyuki Komatsu <komatsu@...> 2000/08/03

小松です。

[#10518] Re: environment variables — matz@... (Yukihiro Matsumoto) 2000/08/03

まつもと ゆきひろです

[#10531] Re: environment variables — "Shigeo Kobayashi" <shigeo@...> 2000/08/03

小林です。

[#10547] Re: environment variables — Satoshi Nojo <nojo@...> 2000/08/03

能條といいます.

[#10549] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/04

なかだです。

[#10555] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/08/04

なかだです。

[#10558] Re: environment variables — matz@... (Yukihiro Matsumoto) 2000/08/04

まつもと ゆきひろです

[#10364] Re: environment variables — matz@... (Yukihiro Matsumoto) 2000/07/24

まつもと ゆきひろです

[#10365] Re: environment variables — WATANABE Hirofumi <eban@...> 2000/07/24

わたなべです.

[#10368] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/07/24

なかだです。

[#10369] Re: environment variables — WATANABE Hirofumi <eban@...> 2000/07/24

わたなべです.

[#10371] Re: environment variables — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/07/24

なかだです。

[#10372] Re: environment variables — WATANABE Hirofumi <eban@...> 2000/07/24

わたなべです.

[#10384] ruby 1.4.6 preview — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

24 messages 2000/07/25

[ruby-dev:10359] Re: environment variables

From: Katsuyuki Komatsu <komatsu@...>
Date: 2000-07-23 07:35:07 UTC
List: ruby-dev #10359
小松です。

In the message of [ruby-dev:10355] Re: environment variables
    on 2000/7/21 02:05:08 nobu.nakada@nifty.ne.jp wrote:

>   mkconfig.rb のパッチがバグってたので訂正します。

これを、

http://www.geocities.co.jp/SiliconValley-Bay/4076/archive/win-20000719.patch.gz

に足して試してみているのですが、いくつか。

  1.win32/Makefileで参照しているのにwin32/mkexports.rbが
    入っていませんでした。いれておいていただけるとうれしいです。

  2.ext/extmk.rb.inの
      system "mkdir", target unless File.directory?(target)
    が失敗するので、
      Dir.mkdir target unless File.directory?(target)
    に変更してみました。

  3.以下のように相対パス指定でソースディレクトリを指定した場合に
    いくつか問題がありました。

      cd ruby-1.5.4
      mkdir mswin32
      cd mswin32
      ..\win32\configure ..
      nmake
      nmake test
      nmake DESTDIR=/usr/local install

    a) config.statusが .. にコピーされてしまいます。
       また、RUBY_INSTALL_NAMEをrubymw-1.5に変更しているのに、
       config.statusの対応する部分が変わってませんでした。
    b) configure.batでextが作られませんでした。
    c) ext/mswin32_extmk.rbが-Xextがあるため起動できませんでした。
    d) rbconfig.rbを作成するときにsrcdirがうまく設定されませんでした。
       config.statusからac_given_srcdirを外して、mkconfig.rbに
       $(srcdir)を渡して生成するようにしてみました。

  4.ruby.defのLIBRARYの行をMakefileで生成するようにしてみました。
    win32/mkexports.rbは[ruby-dev:10189]にEXPORTSの出力を足したもの
    ([ruby-dev:10200]) でLIBRARY行を生成しないものと仮定しています。

  5.nmake testでrubymw-1.5.exeを起動するときに.exeなしだと、.5が
    拡張子とみなされてしまい、起動に失敗してしまいました。
    #{CONFIG['EXEEXT']}を追加してみました。

添付パッチは、win-20000719.patch.gzと[ruby-dev:10355]をあてたものに
対するものです。

ところで、2.でmkdirが失敗する件ですがこんな感じです。

    C:\lang\ruby>ruby -v -e "p system 'mkdir', 'abc'"
    ruby 1.5.4 (2000-07-21) [i386-mswin32]
    false

    C:\lang\ruby>

win32/win32.cのdo_spawn()で、"|| isInternalCmd(cmd)"がコメント
アウトされているからですが、なぜだったんでしょう?

このコードが導入されたのは、win32/win32.cになる前のmissing/nt.c時代の
1.1.1.2.2.1 (Thu Mar 26 9:09:41 1998) でした。

    else if ((shell = getenv("COMSPEC")) != 0) {
	if (NtHasRedirection(cmd) /* || isInternalCmd(cmd) */) { ← これ
	  do_comspec_shell:
	    return spawnle(mode, shell, shell, "/c", cmd, (char*)0, environ);
	}
    }

diff -ru1p ruby-1.5.4.nakada/ext/extmk.rb.in ruby-1.5.4/ext/extmk.rb.in
--- ruby-1.5.4.nakada/ext/extmk.rb.in	Sat Jul 22 21:30:19 2000
+++ ruby-1.5.4/ext/extmk.rb.in	Sat Jul 22 22:53:07 2000
@@ -550,3 +550,3 @@ def extmake(target)
   begin
-    system "mkdir", target unless File.directory?(target)
+    Dir.mkdir target unless File.directory?(target)
     Dir.chdir target
diff -ru1p ruby-1.5.4.nakada/ext/mswin32_extmk.rb ruby-1.5.4/ext/mswin32_extmk.rb
--- ruby-1.5.4.nakada/ext/mswin32_extmk.rb	Sat Jul 22 21:30:19 2000
+++ ruby-1.5.4/ext/mswin32_extmk.rb	Sat Jul 22 22:53:07 2000
@@ -33,4 +33,7 @@ end
 
+dir = ARGV[0] || '.'
+dir = File.expand_path(ARGV[0])
+Dir.chdir('ext')
 begin
-  create_gsub_rb(ARGV[0] || '.')
+  create_gsub_rb(dir)
   load "mswin32_gsub.rb"
diff -ru1p ruby-1.5.4.nakada/mkconfig.rb ruby-1.5.4/mkconfig.rb
--- ruby-1.5.4.nakada/mkconfig.rb	Sat Jul 22 21:30:19 2000
+++ ruby-1.5.4/mkconfig.rb	Sat Jul 22 22:53:07 2000
@@ -5,2 +5,3 @@ require File.dirname($0)+"/lib/ftools"
 rbconfig_rb = ARGV[0] || 'rbconfig.rb'
+srcdir = ARGV[1]
 File.makedirs(File.dirname(rbconfig_rb), true)
@@ -25,2 +26,3 @@ v_fast = []
 v_others = []
+has_srcdir = false
 has_version = false
@@ -60,2 +62,3 @@ File.foreach "config.status" do |$_|
     v_fast << "  CONFIG[\"srcdir\"] = \"" + File.expand_path($1) + "\"\n"
+    has_srcdir = true
   elsif /^ac_given_INSTALL=(.*)/
@@ -64,2 +67,6 @@ File.foreach "config.status" do |$_|
 #  break if /^CEOF/
+end
+
+if not has_srcdir
+  v_fast << "  CONFIG[\"srcdir\"] = \"" + File.expand_path(srcdir) + "\"\n"
 end
diff -ru1p ruby-1.5.4.nakada/rubytest.rb ruby-1.5.4/rubytest.rb
--- ruby-1.5.4.nakada/rubytest.rb	Wed Jun 14 17:08:50 2000
+++ ruby-1.5.4/rubytest.rb	Sat Jul 22 22:53:07 2000
@@ -34,3 +34,3 @@ error = ''
 
-`./#{CONFIG["ruby_install_name"]} #{CONFIG["srcdir"]}/sample/test.rb`.each do |line|
+`./#{CONFIG["ruby_install_name"]}#{CONFIG['EXEEXT']} #{CONFIG["srcdir"]}/sample/test.rb`.each do |line|
   if line =~ /^end of test/
diff -ru1p ruby-1.5.4.nakada/win32/Makefile ruby-1.5.4/win32/Makefile
--- ruby-1.5.4.nakada/win32/Makefile	Sat Jul 22 21:30:20 2000
+++ ruby-1.5.4/win32/Makefile	Sat Jul 22 22:53:07 2000
@@ -94,3 +94,3 @@ ext/extmk.rb:	$(srcdir)/ext/extmk.rb.in 
 		@echo Creating ext/extmk.rb
-		@.\miniruby$(EXEEXT) -Xext $(srcdir)/ext/mswin32_extmk.rb $(srcdir)/ext
+		@.\miniruby$(EXEEXT) $(srcdir)/ext/mswin32_extmk.rb $(srcdir)/ext
 
@@ -124,3 +124,4 @@ rubymw.dll:	$(LIBRUBY)
 ruby.def:	$(LIBRUBY_A) miniruby$(EXEEXT)
-		dumpbin -symbols $(LIBRUBY_A) | .\miniruby$(EXEEXT) $(srcdir)/win32/mkexports.rb > $@
+		echo LIBRARY $(LIBRUBY_SO) > $@
+		dumpbin -symbols $(LIBRUBY_A) | .\miniruby$(EXEEXT) $(srcdir)/win32/mkexports.rb >> $@
 
@@ -149,3 +150,3 @@ test:		miniruby$(EXEEXT)
 rbconfig.rb:	miniruby$(EXEEXT)
-		@.\miniruby$(EXEEXT) $(srcdir)/mkconfig.rb rbconfig.rb
+		@.\miniruby$(EXEEXT) $(srcdir)/mkconfig.rb rbconfig.rb $(srcdir)
 
diff -ru1p ruby-1.5.4.nakada/win32/config.status ruby-1.5.4/win32/config.status
--- ruby-1.5.4.nakada/win32/config.status	Sat Jul 22 21:30:20 2000
+++ ruby-1.5.4/win32/config.status	Sat Jul 22 22:53:07 2000
@@ -1,2 +1 @@
-ac_given_srcdir=.
 s%@SHELL@%%g
@@ -12,3 +11,3 @@ s%@exec_prefix@%${prefix}%g
 s%@prefix@%%g
-s%@program_transform_name@%s,x,x,%g
+s%@program_transform_name@%s,$$,mw-1.5,%g
 s%@bindir@%${exec_prefix}/bin%g
@@ -54,3 +53,3 @@ s%@LIBRUBY_LDSHARED@%%g
 s%@LIBRUBY_DLDFLAGS@%%g
-s%@RUBY_INSTALL_NAME@%ruby%g
+s%@RUBY_INSTALL_NAME@%rubymw-1.5%g
 s%@LIBRUBY_A@%lib$(RUBY_INSTALL_NAME).lib%g
diff -ru1p ruby-1.5.4.nakada/win32/configure.bat ruby-1.5.4/win32/configure.bat
--- ruby-1.5.4.nakada/win32/configure.bat	Sat Jul 22 21:30:20 2000
+++ ruby-1.5.4/win32/configure.bat	Sat Jul 22 22:53:07 2000
@@ -6,5 +6,6 @@ if not exist %srcdir%\win32\win32.h goto
 copy %srcdir%\win32\config.h .
-copy %srcdir%\win32\config.status ..
+copy %srcdir%\win32\config.status .
 echo srcdir = %srcdir% > Makefile
 echo !INCLUDE $(srcdir)/win32/Makefile >> Makefile
+if not exist ext\* mkdir ext
 

--
小松克行 / Katsuyuki Komatsu <komatsu@sarion.co.jp>

In This Thread