зеркало из https://github.com/github/ruby.git
* win32/mkexports.rb (Exports#read_substitution): need to read
from subst.h too. [Bug #5675] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
02f9b4d606
Коммит
b038172348
|
@ -1,3 +1,8 @@
|
||||||
|
Mon Nov 28 12:15:28 2011 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
|
* win32/mkexports.rb (Exports#read_substitution): need to read
|
||||||
|
from subst.h too. [Bug #5675]
|
||||||
|
|
||||||
Mon Nov 28 11:46:35 2011 NAKAMURA Usaku <usa@ruby-lang.org>
|
Mon Nov 28 11:46:35 2011 NAKAMURA Usaku <usa@ruby-lang.org>
|
||||||
|
|
||||||
* io.c (rb_io_flush): release GVL during fsync() on Windows.
|
* io.c (rb_io_flush): release GVL during fsync() on Windows.
|
||||||
|
|
|
@ -41,8 +41,17 @@ class Exports
|
||||||
syms[internal] = export
|
syms[internal] = export
|
||||||
winapis[$1] = internal if /^_?(rb_w32_\w+)(?:@\d+)?$/ =~ internal
|
winapis[$1] = internal if /^_?(rb_w32_\w+)(?:@\d+)?$/ =~ internal
|
||||||
end
|
end
|
||||||
win32h = File.join(File.dirname(File.dirname(__FILE__)), "include/ruby/win32.h")
|
incdir = File.join(File.dirname(File.dirname(__FILE__)), "include/ruby")
|
||||||
IO.foreach(win32h) do |line|
|
read_substitution(incdir+"/win32.h", syms, winapis)
|
||||||
|
read_substitution(incdir+"/subst.h", syms, winapis)
|
||||||
|
syms["NtInitialize"] ||= "ruby_sysinit" if syms["ruby_sysinit"]
|
||||||
|
syms["rb_w32_vsnprintf"] ||= "ruby_vsnprintf"
|
||||||
|
syms["rb_w32_snprintf"] ||= "ruby_snprintf"
|
||||||
|
@syms = syms
|
||||||
|
end
|
||||||
|
|
||||||
|
def read_substitution(header, syms, winapis)
|
||||||
|
IO.foreach(header) do |line|
|
||||||
if /^#define (\w+)\((.*?)\)\s+(?:\(void\))?(rb_w32_\w+)\((.*?)\)\s*$/ =~ line and
|
if /^#define (\w+)\((.*?)\)\s+(?:\(void\))?(rb_w32_\w+)\((.*?)\)\s*$/ =~ line and
|
||||||
$2.delete(" ") == $4.delete(" ")
|
$2.delete(" ") == $4.delete(" ")
|
||||||
export, internal = $1, $3
|
export, internal = $1, $3
|
||||||
|
@ -51,10 +60,6 @@ class Exports
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
syms["NtInitialize"] ||= "ruby_sysinit" if syms["ruby_sysinit"]
|
|
||||||
syms["rb_w32_vsnprintf"] ||= "ruby_vsnprintf"
|
|
||||||
syms["rb_w32_snprintf"] ||= "ruby_snprintf"
|
|
||||||
@syms = syms
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def exports(name = $name, library = $library, description = $description)
|
def exports(name = $name, library = $library, description = $description)
|
||||||
|
|
Загрузка…
Ссылка в новой задаче