summaryrefslogtreecommitdiffhomepage
path: root/Rakefile
diff options
context:
space:
mode:
authortake-cheeze <[email protected]>2018-12-06 11:47:17 +0900
committertake-cheeze <[email protected]>2018-12-06 11:47:17 +0900
commitb6850f88a1de68599e48e2c08b996d96eed5ea33 (patch)
tree6ab66ba29d404f403fa6964671e1ec08640a2cb9 /Rakefile
parente6bad6766a8ddc00c23b1c0204b047dfbf8e3041 (diff)
downloadmruby-b6850f88a1de68599e48e2c08b996d96eed5ea33.tar.gz
mruby-b6850f88a1de68599e48e2c08b996d96eed5ea33.zip
Support lock file for git.
Diffstat (limited to 'Rakefile')
-rw-r--r--Rakefile14
1 files changed, 14 insertions, 0 deletions
diff --git a/Rakefile b/Rakefile
index 20b6096f5..e18f15c97 100644
--- a/Rakefile
+++ b/Rakefile
@@ -8,12 +8,19 @@ MRUBY_BUILD_HOST_IS_OPENBSD = RUBY_PLATFORM.include?('openbsd')
$LOAD_PATH << File.join(MRUBY_ROOT, "lib")
# load build systems
+require 'yaml'
require "mruby-core-ext"
require "mruby/build"
require "mruby/gem"
# load configuration file
MRUBY_CONFIG = (ENV['MRUBY_CONFIG'] && ENV['MRUBY_CONFIG'] != '') ? ENV['MRUBY_CONFIG'] : "#{MRUBY_ROOT}/build_config.rb"
+MRUBY_CONFIG_LOCK_FILE = "#{MRUBY_CONFIG}.lock"
+MRUBY_CONFIG_LOCK = if File.exist? MRUBY_CONFIG_LOCK_FILE
+ YAML.load File.read MRUBY_CONFIG_LOCK_FILE
+ else
+ {}
+ end
load MRUBY_CONFIG
# load basic rules
@@ -115,6 +122,13 @@ task :all => depfiles do
MRuby.each_target do
print_build_summary
end
+
+ locks_result = { 'builds' => {} }
+ MRuby.each_target do
+ locks_result['builds'][name] = locks
+ end
+
+ File.write MRUBY_CONFIG_LOCK_FILE, YAML.dump(locks_result)
end
desc "run all mruby tests"