[#34261] ComplexFloat — "Kenta Murata" <muraken@...>

村田です.

117 messages 2008/04/06
[#34280] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

村田です.

[#34286] Re: ComplexFloat — Nobuyoshi Nakada <nobu@...> 2008/04/10

なかだです。

[#34288] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34290] Re: ComplexFloat — "U.Nakamura" <usa@...> 2008/04/10

こんにちは、なかむら(う)です。

[#34293] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34296] Re: ComplexFloat — "U.Nakamura" <usa@...> 2008/04/10

こんにちは、なかむら(う)です。

[#34298] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34300] Re: ComplexFloat — Tanaka Akira <akr@...> 2008/04/10

In article <761216ce0804100221x67f10f12iab12b0e35b6f50e4@mail.gmail.com>,

[#34301] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34303] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/10

まつもと ゆきひろです

[#34314] Re: ComplexFloat — Tadayoshi Funaba <tadf@...> 2008/04/10

利点としては、拡張ライブラリが書きやすい、ということ。正当化の理由とし

[#34316] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34317] Re: ComplexFloat — Tadayoshi Funaba <tadf@...> 2008/04/10

> 私にはいびつな進化という感じはしません.むしろ,せっかく C で実装できるのに

[#34318] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/10

むらたです.

[#34322] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/10

まつもと ゆきひろです

[#34328] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/11

むらたです.

[#34331] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/11

まつもと ゆきひろです

[#34340] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/11

むらたです.

[#34341] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/11

まつもと ゆきひろです

[#34362] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/12

むらたです.

[#34363] Re: ComplexFloat — Tanaka Akira <akr@...> 2008/04/12

In article <761216ce0804120723n16bfbad7qdae90f142978d256@mail.gmail.com>,

[#34367] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/12

むらたです.

[#34368] Re: ComplexFloat — Tanaka Akira <akr@...> 2008/04/12

In article <761216ce0804121011h6132d58fh4916ecbb29d58690@mail.gmail.com>,

[#34369] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/12

むらたです.

[#34364] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/12

まつもと ゆきひろです

[#34366] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/12

むらたです.

[#34386] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/13

まつもと ゆきひろです

[#34415] Re: ComplexFloat — "Kenta Murata" <muraken@...> 2008/04/15

むらたです.

[#34439] Re: ComplexFloat — Shin-ichiro HARA <sinara@...> 2008/04/17

原です。

[#34442] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/04/17

まつもと ゆきひろです

[#34451] Re: ComplexFloat — Shin-ichiro HARA <sinara@...> 2008/04/18

原です。

[#34455] Re: ComplexFloat — Tadayoshi Funaba <tadf@...> 2008/04/18

> 1. ComplexFloat を組込みにし、Complex を標準ライブラリとして提供する。

[#34457] Re: ComplexFloat — Shin-ichiro HARA <sinara@...> 2008/04/20

原です。

[#34458] Re: ComplexFloat — Tadayoshi Funaba <tadf@...> 2008/04/20

> 分かりににくかったですが、これは、ComplexFloat を含めた組込みの数体系が

[#34502] Re: ComplexFloat — sheepman <sh@...> 2008/04/24

こんばんは sheepman です。

[#34601] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/05/07

まつもと ゆきひろです

[#34603] Re: ComplexFloat — keiju@... (石塚圭樹) 2008/05/07

けいじゅ@いしつかです.

[#34614] Re: ComplexFloat — Yukihiro Matsumoto <matz@...> 2008/05/08

まつもと ゆきひろです

[#34621] Re: ComplexFloat — keiju@... (石塚圭樹) 2008/05/08

けいじゅ@いしつかです.

[ruby-dev:34517] IPv6 support for mswin

From: "M. Kozuka" <ma-kun@...>
Date: 2008-04-26 06:17:24 UTC
List: ruby-dev #34517
ruby-dev MLの皆様、はじめまして。
小塚といいます。

現在、1.8系、1.9系共に、mswinでは正攻法ではIPv6が
うまく使えず(ヘッダが不適切なためipv6の有無が常に失敗する)
悲しい思いをしています。
以下のような変更で通るようになると思いますが、どうでしょうか。
(他のプラットフォームで不具合があるかどうか未検証です。
 あと、WinXPで作ったバイナリが2kで動かなくなるとかあるかもです)


Index: ext/socket/extconf.rb
===================================================================
--- ext/socket/extconf.rb	(revision 16197)
+++ ext/socket/extconf.rb	(working copy)
@@ -30,9 +30,24 @@
 end

 ipv6 = false
-default_ipv6 = /cygwin/ !~ RUBY_PLATFORM
-if enable_config("ipv6", default_ipv6)
-  if checking_for("ipv6") {try_link(<<EOF)}
+case RUBY_PLATFORM
+when /bccwin32|mswin32|mingw/
+  if enable_config("ipv6", true)
+    if checking_for("ipv6") {try_link(<<EOF)}
+#{COMMON_HEADERS}
+main()
+{
+  socket(AF_INET6, SOCK_STREAM, 0);
+}
+EOF
+      $defs << "-DENABLE_IPV6" << "-DINET6"
+      ipv6 = true
+    end
+  end
+else
+  default_ipv6 = /cygwin/ !~ RUBY_PLATFORM
+  if enable_config("ipv6", default_ipv6)
+    if checking_for("ipv6") {try_link(<<EOF)}
 #include <sys/types.h>
 #include <sys/socket.h>
 main()
@@ -40,8 +55,9 @@
   socket(AF_INET6, SOCK_STREAM, 0);
 }
 EOF
-    $defs << "-DENABLE_IPV6" << "-DINET6"
-    ipv6 = true
+      $defs << "-DENABLE_IPV6" << "-DINET6"
+      ipv6 = true
+    end
   end
 end

@@ -105,7 +121,13 @@
 end

 getaddr_info_ok = enable_config("wide-getaddrinfo") do
+  wsastartup = <<EOF if $mswin or $bccwin or $mingw
+  WSADATA wsaData;
+  if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0)
+    goto bad;
+EOF
   checking_for("wide getaddrinfo") {try_run(<<EOF)}
+#{COMMON_HEADERS}
 #{cpp_include(headers)}
 #include <stdlib.h>

@@ -123,8 +145,9 @@
 main()
 {
   int passive, gaierr, inet4 = 0, inet6 = 0;
-  struct addrinfo hints, *ai, *aitop;
+  struct addrinfo hints, *ai, *aitop = NULL;
   char straddr[INET6_ADDRSTRLEN], strport[16];
+#{wsastartup}

   for (passive = 0; passive <= 1; passive++) {
     memset(&hints, 0, sizeof(hints));
@@ -234,7 +257,7 @@

 $objs = ["socket.#{$OBJEXT}"]

-unless getaddr_info_ok and have_func("getnameinfo", "netdb.h") and
have_func("getaddrinfo", "netdb.h")
+unless getaddr_info_ok and have_func("getnameinfo", headers) and
have_func("getaddrinfo", headers)
   if have_struct_member("struct in6_addr", "s6_addr8", headers)
     $defs[-1] = "-DHAVE_ADDR8"
   end
Index: include/ruby/win32.h
===================================================================
--- include/ruby/win32.h	(revision 16197)
+++ include/ruby/win32.h	(working copy)
@@ -28,6 +28,7 @@
 // #include <stdarg.h> conflict with varargs.h?
 #if !defined(WSAAPI)
 #include <winsock2.h>
+#include <ws2tcpip.h>
 #endif

 #define NT 1			/* deprecated */
Index: win32/Makefile.sub
===================================================================
--- win32/Makefile.sub	(revision 16197)
+++ win32/Makefile.sub	(working copy)
@@ -260,7 +260,7 @@
 COMMON_MACROS = WIN32_LEAN_AND_MEAN WIN32
 !endif
 !ifndef COMMON_HEADERS
-COMMON_HEADERS = winsock2.h windows.h
+COMMON_HEADERS = winsock2.h ws2tcpip.h windows.h
 !endif

 arch_hdrdir = $(EXTOUT)/include/$(arch)

-- 
KOZUKA Masahiro @ Graduate School of Law, Kyoto University, Japan

In This Thread

Prev Next