From 5cae104e51be9cbf524b7d953b33d0909c46d006 Mon Sep 17 00:00:00 2001 From: mrkn Date: Sat, 1 Dec 2018 09:29:14 +0000 Subject: Let sub-directory exts depend on their parent ext * ext/extmk.rb: Let sub-directory exts depend on their parent ext. * template/exts.mk.tmpl: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/extmk.rb | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'ext/extmk.rb') diff --git a/ext/extmk.rb b/ext/extmk.rb index c5b41513bd..1389dc4117 100755 --- a/ext/extmk.rb +++ b/ext/extmk.rb @@ -722,7 +722,16 @@ begin end targets.each do |tgt| exts.each do |d| - mf.puts "#{d[0..-2]}#{tgt}:\n\t$(Q)#{submake} $(MFLAGS) V=$(V) $(@F)" + d = d[0..-2] + t = "#{d}#{tgt}" + if /^(dist|real)?clean$/ =~ tgt + deps = exts.select {|e|e.start_with?(d)}.map {|e|"#{e[0..-2]}#{tgt}"} - [t] + pd = ' ' + deps.join(' ') unless deps.empty? + else + pext = File.dirname(d) + pd = " #{pext}/#{tgt}" if exts.include?("#{pext}/.") + end + mf.puts "#{t}:#{pd}\n\t$(Q)#{submake} $(MFLAGS) V=$(V) $(@F)" end end mf.puts "\n""extso:\n" -- cgit v1.2.3