小松です。

In the message of [ruby-dev:7436] Re: [PATCH] mswin32 support
    on 1999/7/27 13:40:26 matz / netlab.co.jp (Yukihiro Matsumoto) wrote:
||だいたいよさそうなので、出してしまいます。
||patchは1999/7/22のcheckinに対するdiffです。
|
|パッチ当てました。1.3.6出そう。

やっぱりやりすぎててruby-gtk-0.20のMakefile作成に失敗してしまいました。
[ruby-dev:7430]のパッチに対するパッチです。

# 間に合うか。

--- ext/extmk.rb.nt-ruby-dev-7430	Tue Jul 27 10:33:14 1999
+++ ext/extmk.rb.nt	Tue Jul 27 21:55:06 1999
@@ -173,12 +173,21 @@ def have_library(lib, func="main")
   if func && func != ""
     libs = append_library($libs, lib)
     #print "libs=#{libs}\n"
-    unless try_link(<<"SRC", libs)
+    r = try_link(<<"SRC", libs)
+#include <windows.h>
+#include <winsock.h>
+int main() { return 0; }
+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
+    unless r
       #print "fail : #{libs}\n"
       $lib_cache[lib] = 'no'
       $cache_mod = true
@@ -205,12 +214,21 @@ def have_func(func)
   libs = $libs
 
   #print "libs=#{libs}\n"
-  unless try_link(<<"SRC", libs)
+  r = try_link(<<"SRC", libs)
+#include <windows.h>
+#include <winsock.h>
+int main() { return 0; }
+int t() { #{func}(); return 0; }
+SRC
+  unless 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
+  unless r
     $func_cache[func] = 'no'
     $cache_mod = true
     return false
--- lib/mkmf.rb-ruby-dev-7430	Tue Jul 27 10:33:05 1999
+++ lib/mkmf.rb	Tue Jul 27 21:39:10 1999
@@ -178,8 +178,16 @@ def have_library(lib, func="main")
 #include <windows.h>
 #include <winsock.h>
 int main() { return 0; }
+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; }
@@ -224,8 +232,16 @@ def have_func(func)
 #include <windows.h>
 #include <winsock.h>
 int main() { return 0; }
+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; }

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