ruby-changes:15815
From: usa <ko1@a...>
Date: Wed, 12 May 2010 11:40:25 +0900 (JST)
Subject: [ruby-changes:15815] Ruby:r27746 (trunk): * ext/socket/extconf.rb: test all IPPROTO_* constants for recent Win32
usa 2010-05-12 11:40:09 +0900 (Wed, 12 May 2010) New Revision: 27746 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=27746 Log: * ext/socket/extconf.rb: test all IPPROTO_* constants for recent Win32 SDK. Modified files: trunk/ChangeLog trunk/ext/socket/extconf.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 27745) +++ ChangeLog (revision 27746) @@ -1,3 +1,8 @@ +Wed May 12 11:39:10 2010 NAKAMURA Usaku <usa@r...> + + * ext/socket/extconf.rb: test all IPPROTO_* constants for recent Win32 + SDK. + Wed May 12 10:57:04 2010 Nobuyoshi Nakada <nobu@r...> * numeric.c (flo_to_s): make minimum string representation. Index: ext/socket/extconf.rb =================================================================== --- ext/socket/extconf.rb (revision 27745) +++ ext/socket/extconf.rb (revision 27746) @@ -110,12 +110,11 @@ have_header("netinet/tcp.h") if /cygwin/ !~ RUBY_PLATFORM # for cygwin 1.1.5 have_header("netinet/udp.h") -%w[ - IPPROTO_IP - IPPROTO_IPV6 -].each {|name| - have_const(name, headers) -} +if !have_macro("IPPROTO_IPV6", headers) && have_const("IPPROTO_IPV6", headers) + IO.read(File.join(File.dirname(__FILE__), "mkconstants.rb")).sub(/\A.*^__END__$/m, '').split(/\r?\n/).grep(/\AIPPROTO_\w*/){$&}.each {|name| + have_const(name, headers) unless $defs.include?("-DHAVE_CONST_#{name.upcase}") + } +end if (have_func("sendmsg") | have_func("recvmsg")) && /64-darwin/ !~ RUBY_PLATFORM # CMSG_ macros are broken on 64bit darwin, because of use of __DARWIN_ALIGN. @@ -342,7 +341,7 @@ have_func("getpeerucred") # workaround for recent Windows SDK -$defs << "-DIPPROTO_IPV6=IPPROTO_IPV6" if have_const("IPPROTO_IPV6") && !have_macro("IPPROTO_IPV6") +$defs << "-DIPPROTO_IPV6=IPPROTO_IPV6" if $defs.include?("-DHAVE_CONST_IPPROTO_IPV6") && !have_macro("IPPROTO_IPV6") $distcleanfiles << "constants.h" << "constdefs.*" -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/