summaryrefslogtreecommitdiff
path: root/win32
diff options
context:
space:
mode:
authoryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-02-22 09:47:21 +0000
committeryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-02-22 09:47:21 +0000
commitde16edce97bc07823391dbccbf68ffb1dc4c53e4 (patch)
treedf446c8307fa347ed9ae4bd425876ea0da6f8334 /win32
parent441746f46655c429a77e1d6041ab162d79f70dc8 (diff)
merges r22025 from trunk into ruby_1_9_1.
* win32/mkexports.rb: shouldn't export DllMain. reported at http://pc11.2ch.net/test/read.cgi/tech/1233686068/21 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@22510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'win32')
-rwxr-xr-xwin32/mkexports.rb5
1 files changed, 3 insertions, 2 deletions
diff --git a/win32/mkexports.rb b/win32/mkexports.rb
index 4d7eeb57eb..6c480ef3f6 100755
--- a/win32/mkexports.rb
+++ b/win32/mkexports.rb
@@ -110,7 +110,7 @@ class Exports::Mswin < Exports
next unless l.sub!(/.*?\s(\(\)\s+)?External\s+\|\s+/, '')
is_data = !$1
if noprefix or /^[@_]/ =~ l
- next if /(?!^)@.*@/ =~ l || /@[[:xdigit:]]{16}$/ =~ l
+ next if /(?!^)@.*@/ =~ l || /@[[:xdigit:]]{16}$/ =~ l || /^_DllMain@/ =~ l
l.sub!(/^[@_]/, '') if /@\d+$/ !~ l
elsif !l.sub!(/^(\S+) \([^@?\`\']*\)$/, '\1')
next
@@ -143,7 +143,8 @@ class Exports::Mingw < Exports
def each_export(objs)
objdump(objs) do |l|
- yield $2, !$1 if /\s(?:(T)|[[:upper:]])\s_((?!Init_).*)$/ =~ l
+ next if /@.*@/ =~ l
+ yield $2, !$1 if /\s(?:(T)|[[:upper:]])\s_((?!Init_|DllMain@).*)$/ =~ l
end
yield "strcasecmp", "_stricmp"
yield "strncasecmp", "_strnicmp"