summaryrefslogtreecommitdiffhomepage
path: root/Rakefile
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2019-08-21 17:17:30 +0900
committerGitHub <[email protected]>2019-08-21 17:17:30 +0900
commit90bffaa2a6b8e2e5f72eaa8d9e1b98fd3d715870 (patch)
treeee30baefde9a97f2b3f571ce3fd0f9cbde0901fa /Rakefile
parent4c8e6daab724e197de3f187f8a2c4896987a406b (diff)
parentb6850f88a1de68599e48e2c08b996d96eed5ea33 (diff)
downloadmruby-90bffaa2a6b8e2e5f72eaa8d9e1b98fd3d715870.tar.gz
mruby-90bffaa2a6b8e2e5f72eaa8d9e1b98fd3d715870.zip
Merge pull request #4180 from take-cheeze/lock_file
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 533153290..70dce2e46 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
@@ -118,6 +125,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"