summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2019-10-09 08:01:52 +0900
committerGitHub <[email protected]>2019-10-09 08:01:52 +0900
commit3e9b501ff8457a7a3aeeec090c277d3f537d3302 (patch)
treef6e5abe35469b7d14b6860f0f2e1e18e25b0da8e
parentb68818a8a0fb3b37362882790e889d7988f56fa2 (diff)
parentf7616c4287379f09cfca02d277814e2c85dc510a (diff)
downloadmruby-3e9b501ff8457a7a3aeeec090c277d3f537d3302.tar.gz
mruby-3e9b501ff8457a7a3aeeec090c277d3f537d3302.zip
Merge pull request #4761 from take-cheeze/fix_4759
Add mrbgem version field to lock file
-rw-r--r--lib/mruby/build.rb3
-rw-r--r--lib/mruby/build/load_gems.rb1
-rw-r--r--lib/mruby/gem.rb3
3 files changed, 6 insertions, 1 deletions
diff --git a/lib/mruby/build.rb b/lib/mruby/build.rb
index 375b2933a..55b82cd2b 100644
--- a/lib/mruby/build.rb
+++ b/lib/mruby/build.rb
@@ -43,7 +43,7 @@ module MRuby
include Rake::DSL
include LoadGems
attr_accessor :name, :bins, :exts, :file_separator, :build_dir, :gem_clone_dir
- attr_reader :libmruby_objs, :gems, :toolchains
+ attr_reader :libmruby_objs, :gems, :toolchains, :gem_dir_to_repo_url
attr_writer :enable_bintest, :enable_test
alias libmruby libmruby_objs
@@ -90,6 +90,7 @@ module MRuby
@enable_test = false
@enable_lock = true
@toolchains = []
+ @gem_dir_to_repo_url = {}
MRuby.targets[@name] = self
end
diff --git a/lib/mruby/build/load_gems.rb b/lib/mruby/build/load_gems.rb
index 7f2c7202b..9f09167ba 100644
--- a/lib/mruby/build/load_gems.rb
+++ b/lib/mruby/build/load_gems.rb
@@ -113,6 +113,7 @@ module MRuby
end
if lock_enabled?
+ @gem_dir_to_repo_url[gemdir] = url unless params[:path]
locks[url] = {
'url' => url,
'branch' => git.current_branch(gemdir),
diff --git a/lib/mruby/gem.rb b/lib/mruby/gem.rb
index 6cb067b91..a1cdb28af 100644
--- a/lib/mruby/gem.rb
+++ b/lib/mruby/gem.rb
@@ -91,6 +91,9 @@ module MRuby
build.libmruby_objs << @objs
instance_eval(&@build_config_initializer) if @build_config_initializer
+
+ repo_url = build.gem_dir_to_repo_url[dir]
+ build.locks[repo_url]['version'] = version if repo_url
end
def setup_compilers