diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-01-01 07:04:31 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-01-01 07:04:31 +0000 |
commit | 2b3e480bef31e3a1cb30e37ec92e5a59f8b0aa7a (patch) | |
tree | 7817fac0e89be0e79a381ad39a09791803a27400 /ext | |
parent | 1c0e798d5c7e2c326fc3116a2f8dc259c71eea72 (diff) | |
download | ruby-2b3e480bef31e3a1cb30e37ec92e5a59f8b0aa7a.tar.gz |
* ext/socket/mkconstants.rb (Socket::AF_INET6): moved from socket.c.
(Socket::PF_INET6): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rw-r--r-- | ext/socket/mkconstants.rb | 19 | ||||
-rw-r--r-- | ext/socket/socket.c | 4 |
2 files changed, 16 insertions, 7 deletions
diff --git a/ext/socket/mkconstants.rb b/ext/socket/mkconstants.rb index d74310cb34..02d7e17b77 100644 --- a/ext/socket/mkconstants.rb +++ b/ext/socket/mkconstants.rb @@ -43,19 +43,30 @@ def each_data else define = "sock_define_const" end - yield define, name, default_value + guard = nil + if /\A(AF_INET6|PF_INET6)\z/ =~ name + # IPv6 is not supported although AF_INET6 is defined on bcc32/mingw + guard = "defined(INET6)" + end + yield guard, define, name, default_value } end result << ERB.new(<<'EOS', nil, '%').result(binding) -% each_data {|define, name, default_value| -#ifdef <%=name%> +% each_data {|guard, define, name, default_value| +% if guard +#if <%=guard%> +% end +#if defined(<%=name%>) <%=define%>(<%=c_str name%>, <%=name%>); % if default_value #else <%=define%>(<%=c_str name%>, <%=default_value%>); % end #endif +% if guard +#endif +% end % } EOS @@ -79,6 +90,8 @@ SOCK_PACKET AF_INET PF_INET +AF_INET6 +PF_INET6 AF_UNIX PF_UNIX AF_AX25 diff --git a/ext/socket/socket.c b/ext/socket/socket.c index 11976b01a4..b91e1396cd 100644 --- a/ext/socket/socket.c +++ b/ext/socket/socket.c @@ -3733,8 +3733,4 @@ Init_socket() /* constants */ mConst = rb_define_module_under(rb_cSocket, "Constants"); #include "constants.h" -#ifdef INET6 /* IPv6 is not supported although AF_INET6 is defined on bcc32/mingw */ - sock_define_const("AF_INET6", AF_INET6); - sock_define_const("PF_INET6", PF_INET6); -#endif } |