[#7631] 1.3 to 1.4 — Katsuyuki Komatsu <komatsu@...>

小松です。

26 messages 1999/08/12
[#7632] Re: 1.3 to 1.4 — matz@... (Yukihiro Matsumoto) 1999/08/12

まつもと ゆきひろです

[#7634] Re: 1.3 to 1.4 — Katsuyuki Komatsu <komatsu@...> 1999/08/13

小松です。

[#7636] Re: 1.3 to 1.4 — matz@... (Yukihiro Matsumoto) 1999/08/13

まつもと ゆきひろです

[#7638] cvs HEAD (Re: Re: 1.3 to 1.4) — EGUCHI Osamu <eguchi@...> 1999/08/13

えぐち@エスアンドイーです。

[#7647] Re: cvs HEAD (Re: Re: 1.3 to 1.4) — matz@... (Yukihiro Matsumoto) 1999/08/13

まつもと ゆきひろです

[#7641] Re: [ruby-ext:00382] New coerce scheme — keiju@... (石塚圭樹)

けいじゅ@日本ラショナルソフトウェアです.

26 messages 1999/08/13

[ruby-dev:7530] Re: [PATCH] for mswin32 final

From: Katsuyuki Komatsu <komatsu@...>
Date: 1999-08-02 14:27:17 UTC
List: ruby-dev #7530
小松です。

In [ruby-dev:7529] [PATCH] for mswin32 final (Re: [PATCH] find_library()) 
    on 1999/8/2 21:03:31 Katsuyuki Komatsu <komatsu@sarion.co.jp> wrote:
|一応これで、ruby-1.3.6に対するmswin32の最終のパッチ(のつもり)です。

lib/mkmf.rbに入れたhave_library()とhave_func()の変更を
ext/extmk.rb.inに反映し忘れてました。

あと、win32/Makefileのext/extmk.rbに対するstaticオプションを
消したのをもとに戻しました。

# やっぱり、最後にならなかった。

[ruby-dev:7529]のパッチに対するパッチです。

ところで、もう、ext/extmk.rbに対するstaticオプションをやめて
ext/Setup.ntのoption nodynamicをコメントアウトしても
いいと思いますがmswin32な方どうでしょうか?

diff -u1p ext/extmk.rb.in-ruby-dev-7529 ext/extmk.rb.in
--- ext/extmk.rb.in-ruby-dev-7529	Mon Aug  2 20:15:22 1999
+++ ext/extmk.rb.in	Mon Aug  2 22:38:22 1999
@@ -182,3 +182,6 @@ def have_library(lib, func="main")
     libs = append_library($libs, lib)
-    unless try_link(<<"SRC", libs)
+    if /mswin32/ =~ RUBY_PLATFORM
+      r = try_link(<<"SRC", libs)
+#include <windows.h>
+#include <winsock.h>
 int main() { return 0; }
@@ -186,2 +189,17 @@ int t() { #{func}(); return 0; }
 SRC
+      unless r
+        r = try_link(<<"SRC", libs)
+#include <windows.h>
+#include <winsock.h>
+int main() { return 0; }
+int t() { void ((*p)()); p = (void ((*)()))#{func}; return 0; }
+SRC
+      end
+    else
+      r = try_link(<<"SRC", libs)
+int main() { return 0; }
+int t() { #{func}(); return 0; }
+SRC
+    end
+    unless r
       $lib_cache[lib] = 'no'
@@ -229,4 +247,6 @@ def have_func(func)
 
-  unless try_link(<<"SRC", libs)
-char #{func}();
+  if /mswin32/ =~ RUBY_PLATFORM
+    r = try_link(<<"SRC", libs)
+#include <windows.h>
+#include <winsock.h>
 int main() { return 0; }
@@ -234,2 +254,17 @@ int t() { #{func}(); return 0; }
 SRC
+    unless r
+      r = try_link(<<"SRC", libs)
+#include <windows.h>
+#include <winsock.h>
+int main() { return 0; }
+int t() { void ((*p)()); p = (void ((*)()))#{func}; return 0; }
+SRC
+    end
+  else
+    r = try_link(<<"SRC", libs)
+int main() { return 0; }
+int t() { #{func}(); return 0; }
+SRC
+  end
+  unless r
     $func_cache[func] = 'no'
diff -u1p win32/Makefile-ruby-dev-7529 win32/Makefile
--- win32/Makefile-ruby-dev-7529	Mon Aug  2 20:14:43 1999
+++ win32/Makefile	Mon Aug  2 23:03:48 1999
@@ -84,3 +84,3 @@ all:		miniruby$(EXEEXT) rbconfig.rb ext/
 		set LIB=..\..\win32;$(ORGLIBPATH)
-		@.\miniruby$(EXEEXT) -Xext extmk.rb
+		@.\miniruby$(EXEEXT) -Xext extmk.rb static
 

--
小松克行 / Katsuyuki Komatsu <komatsu@sarion.co.jp>

In This Thread