* {bcc,win}32/mkexports.rb: explicit data. [ruby-list:44108]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13688 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
9f99bc4631
commit
fc3e0bd562
@ -1,3 +1,7 @@
|
|||||||
|
Sat Oct 13 09:02:16 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
|
* {bcc,win}32/mkexports.rb: explicit data. [ruby-list:44108]
|
||||||
|
|
||||||
Sat Oct 13 00:17:49 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
|
Sat Oct 13 00:17:49 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||||
|
|
||||||
* lib/rexml/document.rb (REXML::Document::write): leaky
|
* lib/rexml/document.rb (REXML::Document::write): leaky
|
||||||
|
@ -15,7 +15,7 @@ class Exports::Bcc < Exports
|
|||||||
opt = /\.(?:so|dll)\z/i =~ obj ? "-ee" : "-oiPUBDEF -oiPUBD32"
|
opt = /\.(?:so|dll)\z/i =~ obj ? "-ee" : "-oiPUBDEF -oiPUBD32"
|
||||||
IO.foreach("|tdump -q #{opt} #{obj.tr('/', '\\')} < nul") do |l|
|
IO.foreach("|tdump -q #{opt} #{obj.tr('/', '\\')} < nul") do |l|
|
||||||
next unless /(?:PUBDEF|PUBD32|EXPORT)/ =~ l
|
next unless /(?:PUBDEF|PUBD32|EXPORT)/ =~ l
|
||||||
yield $1 if /'(.*?)'/ =~ l
|
yield $1, !$2 /'(.*?)'\s+Segment:\s+_(TEXT)?/ =~ l
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
yield "_strcasecmp", "_stricmp"
|
yield "_strcasecmp", "_stricmp"
|
||||||
|
@ -75,7 +75,7 @@ class Exports
|
|||||||
end
|
end
|
||||||
|
|
||||||
def symbols()
|
def symbols()
|
||||||
@syms.sort.collect {|k, v| v ? "#{k}=#{v}" : k}
|
@syms.sort.collect {|k, v| v ? v == true ? "#{k} DATA" : "#{k}=#{v}" : k}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -90,7 +90,8 @@ class Exports::Mswin < Exports
|
|||||||
case filetype
|
case filetype
|
||||||
when /OBJECT/, /LIBRARY/
|
when /OBJECT/, /LIBRARY/
|
||||||
next if /^[[:xdigit:]]+ 0+ UNDEF / =~ l
|
next if /^[[:xdigit:]]+ 0+ UNDEF / =~ l
|
||||||
next unless l.sub!(/.*\sExternal\s+\|\s+/, '')
|
next unless l.sub!(/.*?\s(\(\)\s+)?External\s+\|\s+/, '')
|
||||||
|
is_data = !$1
|
||||||
if noprefix or l.sub!(/^_/, '')
|
if noprefix or l.sub!(/^_/, '')
|
||||||
next if /@.*@/ =~ l || /@[[:xdigit:]]{16}$/ =~ l
|
next if /@.*@/ =~ l || /@[[:xdigit:]]{16}$/ =~ l
|
||||||
l.sub!(/^/, '_') if /@\d+$/ =~ l
|
l.sub!(/^/, '_') if /@\d+$/ =~ l
|
||||||
@ -102,7 +103,7 @@ class Exports::Mswin < Exports
|
|||||||
else
|
else
|
||||||
next
|
next
|
||||||
end
|
end
|
||||||
yield l.strip
|
yield l.strip, is_data
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user