From f36783751b8b12b4fc2976c82c71a8215f65775a Mon Sep 17 00:00:00 2001 From: nobu Date: Tue, 7 Jun 2005 09:30:35 +0000 Subject: [PATCH] * lib/mkmf.rb (create_makefile): add .SUFFIXES from depend file. fixed: [ruby-dev:26294] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 7 ++++++- lib/mkmf.rb | 11 +++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index b9de8acb2c..4820275b03 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Jun 7 18:30:04 2005 Nobuyoshi Nakada + + * lib/mkmf.rb (create_makefile): add .SUFFIXES from depend file. + fixed: [ruby-dev:26294] + Tue Jun 7 17:20:39 2005 Yukihiro Matsumoto * parse.y (parser_yylex): allow ';;' to be block terminator in @@ -45,7 +50,7 @@ Sat Jun 4 14:55:18 2005 Tanaka Akira * test/dbm/test_dbm.rb: merged from ext/dbm/testdbm.rb. * test/gdbm/test_gdbm.rb: merged from ext/gdbm/testgdbm.rb. - + * test/sdbm/test_sdbm.rb: renamed from ext/sdbm/testsdbm.rb with modification to use test/unit. diff --git a/lib/mkmf.rb b/lib/mkmf.rb index 56cb7050dd..f1ce3f41e4 100644 --- a/lib/mkmf.rb +++ b/lib/mkmf.rb @@ -1110,11 +1110,13 @@ site-install-rb: install-rb depend = File.join(srcdir, "depend") if File.exist?(depend) + suffixes = [] + depout = [] open(depend, "r") do |dfile| mfile.printf "###\n" cont = implicit = nil impconv = proc do - COMPILE_RULES.each {|rule| mfile.print(rule % implicit[0], implicit[1])} + COMPILE_RULES.each {|rule| depout << (rule % implicit[0]) << implicit[1]} implicit = nil end ruleconv = proc do |line| @@ -1127,12 +1129,13 @@ site-install-rb: install-rb end end if m = /\A\.(\w+)\.(\w+)(?:\s*:)/.match(line) + suffixes << m[1] << m[2] implicit = [[m[1], m[2]], [m.post_match]] next elsif RULE_SUBST and /\A[$\w][^#]*:/ =~ line line.gsub!(%r"(?<=\s)(?!\.)([^$(){}+=:\s\/\\,]+)(?=\s|\z)") {|*m| RULE_SUBST % m} end - mfile.print line + depout << line end while line = dfile.gets() line.gsub!(/\.o\b/, ".#{$OBJEXT}") @@ -1152,6 +1155,10 @@ site-install-rb: install-rb impconv.call end end + unless suffixes.empty? + mfile.print ".SUFFIXES: .", suffixes.uniq.join(" ."), "\n\n" + end + mfile.print depout else headers = %w[ruby.h defines.h] if RULE_SUBST