From 7f7aa9d4429256900793bceaef605279ab5e8ccb Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 31 Aug 2016 08:39:23 +0000 Subject: extmk.rb: build_complete * ext/extmk.rb (create_makefile): make gem.build_complete file under TARGET_SO_DIR and install it only when the gem build succeeded. [ruby-core:77057] [Bug #12681] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/extmk.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'ext') diff --git a/ext/extmk.rb b/ext/extmk.rb index 1b86ff0d71..97533219ee 100755 --- a/ext/extmk.rb +++ b/ext/extmk.rb @@ -568,6 +568,24 @@ Dir.chdir('..') FileUtils::makedirs('gems') Dir.chdir('gems') extout = $extout +unless gems.empty? + def self.create_makefile(*args, &block) + if super(*args, &block) + open("Makefile", "a") do |mf| + mf << %{ + +build_complete = $(TARGET_SO_DIR)gem.build_complete +install-so: build_complete +build_complete: $(build_complete) +$(build_complete): $(TARGET_SO) + $(Q) $(TOUCH) $@ + +} + end + true + end + end +end gems.each do |d| $extout = extout.dup $sodir = "$(extout)/gems/$(arch)/#{d[%r{\A[^/]+}]}" -- cgit v1.2.3