diff --git a/ChangeLog b/ChangeLog index 585976b8f7..be28a5c784 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Tue Jul 1 21:09:58 2008 URABE Shyouhei + + * lib/mkmf.rb (create_tmpsrc): we need to include COMMON_HEADERS, + namely inclusion of ruby.h, because _GNU_SOURCE is now defined + there (if any) and socket.so requires it on Linux systems. + Tue Jul 1 20:55:07 2008 URABE Shyouhei * eval.c (rb_interrupt): trick to suppress GCC warning. diff --git a/lib/mkmf.rb b/lib/mkmf.rb index 74a20609b2..034ca0bf9c 100644 --- a/lib/mkmf.rb +++ b/lib/mkmf.rb @@ -321,6 +321,7 @@ end def create_tmpsrc(src) src = yield(src) if block_given? + src[0, 0] = COMMON_HEADERS + "\n" src = src.gsub(/[ \t]+$/, '').gsub(/\A\n+|^\n+$/, '').sub(/[^\n]\z/, "\\&\n") count = 0 begin @@ -1843,7 +1844,7 @@ split = Shellwords.method(:shellwords).to_proc EXPORT_PREFIX = config_string('EXPORT_PREFIX') {|s| s.strip} -hdr = [] +hdr = ['#include "ruby.h"' "\n"] config_string('COMMON_MACROS') do |s| Shellwords.shellwords(s).each do |w| hdr << "#define " + w.split(/=/, 2).join(" ")