From: nobu.nakada@... Date: 2000-09-04T00:50:15+09:00 Subject: [ruby-dev:10815] Re: 今度こそ (patch of the ruby-1.4.6 for NT4.0&VC4.0on DEC Alpha.) なかだです。 At Fri, 1 Sep 2000 21:01:44 +0900, kou@ab1609.sip.eee.yamaguchi-u.ac.jp (Koichi Okada) wrote: > -o を -Fe に書き直さないといけない件に関しては純粋に私のミスです。 > ext/extmk.rb.in を書き直すべき所を > ext/extmk.rb を書き直していたため diff に引っかかっていませんでした。 -Fe じゃないといけないのは了解ですが、これだと他の環境で動かないので まずいです。とりあえず一案として 1.4.6 へのパッチです。config.status でとも思ったんですが、autoconf はそもそも -o を前提にしてるようだし、 他に -o を認識しないような変なコンパイラはなさそうなので VC 用に特化し ました。 > あと、PLATFORM が i386-mswin32 になっていたのを直す関係で、 > win32/ 下に alpha 版の定義ファイルが増えています。 > # この程度なら sed で書き直す方が良い気もするのですが、、、(^^;;;) > 増やしたファイルは win32/ntsetup.bat で環境変数を見る事で選択しています。 なるほど、PROCESSOR_ARCHITECTURE ですか。これって NT だけでしたっけ。 ちなみに AlphaNT だと sed ってあるんですか。 Index: ext/extmk.rb.in =================================================================== RCS file: /home/cvs/ruby/ext/extmk.rb.in,v retrieving revision 1.3.2.6 diff -u -2 -p -r1.3.2.6 extmk.rb.in --- ext/extmk.rb.in 2000/08/28 03:12:10 1.3.2.6 +++ ext/extmk.rb.in 2000/09/03 15:31:58 @@ -51,5 +51,10 @@ else CFLAGS = "@CFLAGS@" end -LINK = "@CC@ -o conftest -I#$topdir -I#$top_srcdir #{CFLAGS} -I#$includedir @LDFLAGS@ %s %s conftest.c %s %s @LIBS@" +if /mswin/ =~ RUBY_PLATFORM + OFLAG = "-Fe" +else + OFLAG = "-o " +end +LINK = "@CC@ #{OFLAG}conftest -I#$topdir -I#$top_srcdir #{CFLAGS} -I#$includedir @LDFLAGS@ %s %s conftest.c %s %s @LIBS@" CPP = "@CPP@ @CPPFLAGS@ -I#$topdir -I#$top_srcdir #{CFLAGS} -I#$includedir %s %s conftest.c" @@ -450,5 +455,5 @@ $(DLLIB): $(OBJS) mfile.printf "\ $(DLLIB): $(OBJS) - $(LDSHARED) $(DLDFLAGS) -o $(DLLIB) $(OBJS) $(LIBS) $(LOCAL_LIBS) + $(LDSHARED) $(DLDFLAGS) #{OFLAG}$(DLLIB) $(OBJS) $(LIBS) $(LOCAL_LIBS) " elsif RUBY_PLATFORM == "m68k-human" Index: lib/mkmf.rb =================================================================== RCS file: /home/cvs/ruby/lib/mkmf.rb,v retrieving revision 1.3.2.8 diff -u -2 -p -r1.3.2.8 mkmf.rb --- lib/mkmf.rb 2000/08/28 03:12:12 1.3.2.8 +++ lib/mkmf.rb 2000/09/03 15:31:59 @@ -34,4 +34,9 @@ elsif RUBY_PLATFORM =~ /-nextstep|-rhaps CFLAGS.gsub!( /-arch\s\w*/, '' ) end +if /mswin/ =~ RUBY_PLATFORM + OFLAG = "-Fe" +else + OFLAG = "-o " +end if /win32|djgpp|mingw32|m68k-human|i386-os2_emx/i =~ RUBY_PLATFORM $null = open("nul", "w") @@ -39,5 +44,5 @@ else $null = open("/dev/null", "w") end -LINK = "#{CONFIG['CC']} -o conftest -I#{$hdrdir} #{CFLAGS} -I#{CONFIG['includedir']} %s #{CONFIG['LDFLAGS']} %s conftest.c %s %s #{CONFIG['LIBS']}" +LINK = "#{CONFIG['CC']} #{OFLAG}conftest -I#{$hdrdir} #{CFLAGS} -I#{CONFIG['includedir']} %s #{CONFIG['LDFLAGS']} %s conftest.c %s %s #{CONFIG['LIBS']}" CPP = "#{CONFIG['CPP']} -E -I#{$hdrdir} #{CFLAGS} -I#{CONFIG['includedir']} %s %s conftest.c" @@ -426,5 +431,5 @@ EOMF mfile.printf <