summaryrefslogtreecommitdiffstats
path: root/lib/mkmf.rb
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-02-10 03:07:24 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-02-10 03:07:24 +0000
commit9594f68f5011005935de3388a7d00a6991eab774 (patch)
treee1f8e1da66c55147b3b1427edf64348c58aaef2d /lib/mkmf.rb
parent1f9da5e23cb663cb22c820d60c0903495e916d56 (diff)
downloadruby-9594f68f5011005935de3388a7d00a6991eab774.tar.gz
ruby-9594f68f5011005935de3388a7d00a6991eab774.tar.xz
ruby-9594f68f5011005935de3388a7d00a6991eab774.zip
* bcc32/Makefile.sub (COMMON_LIBS): add libraries included in
import32.lib. * lib/mkmf.rb (create_makefile): restrict prefixing with srcdir to rule lines, add search path to implicit rules, and set Borland make special macros for search path. * win32/win32.c, win32/win32.h (read): aboid a BCC runtime bug. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@7938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/mkmf.rb')
-rw-r--r--lib/mkmf.rb12
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/mkmf.rb b/lib/mkmf.rb
index c5cfad30b..b2ae7e501 100644
--- a/lib/mkmf.rb
+++ b/lib/mkmf.rb
@@ -1033,6 +1033,7 @@ site-install-rb: install-rb
return unless target
+ mfile.puts SRC_EXT.collect {|ext| ".path.#{ext} = $(VPATH)"} if $nmake == ?b
mfile.print ".SUFFIXES: .#{SRC_EXT.join(' .')} .#{$OBJEXT}\n"
mfile.print "\n"
@@ -1068,13 +1069,22 @@ site-install-rb: install-rb
end
depend = File.join(srcdir, "depend")
+ cont = rule = false
if File.exist?(depend)
open(depend, "r") do |dfile|
mfile.printf "###\n"
while line = dfile.gets()
line.gsub!(/\.o\b/, ".#{$OBJEXT}")
- line.gsub!(/(\s)([^\s\/]+\.[ch])/, '\1{$(srcdir)}\2') if $nmake
line.gsub!(/\$\(hdrdir\)\/config.h/, $config_h) if $config_h
+ if $nmake
+ rule = /^[$\w][^#]*:/ =~ line unless cont
+ cont = /(?:^|[^\\])(?:\\\\)*\\$/ =~ line
+ if rule
+ line.gsub!(%r"(?<=\s)(?!\.)(?=[^\s\/]+\.(?:#{(SRC_EXT + ['h']).join('|')})(?\s|\z))"o, '{.;$(VPATH)}')
+ else
+ line.sub!(/^(\.\w+)(\.\w+)(?=\s*:)/, '{.;$(VPATH)}\1{}\2')
+ end
+ end
mfile.print line
end
end