summaryrefslogtreecommitdiff
path: root/tool/ruby_vm/scripts
diff options
context:
space:
mode:
authork0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-01-27 01:59:08 +0000
committerk0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-01-27 01:59:08 +0000
commitbe27efdb83aadd82f0d7573f5b547f57cad472f5 (patch)
treeb55148b0985f3aa854bfe9949bb571f178a5c256 /tool/ruby_vm/scripts
parentd678c274aa747323846245ecc8225bb7ee1de04f (diff)
dumper.rb: stop getting --destdir option value
via current directory. It's kind of a global state and fragile to implementation changes in other places, and how the `Dir.getwd` is set is not obvious from just reading around `RubyVM::Dumper#initialize` if it depends on the global state. tool/ruby_vm/controllers/application_controller.rb: explicitly pass destdir to RubyVM::Dumper. tool/ruby_vm/scripts/insns2vm.rb: explicitly pass destdir parsed from optparse. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62064 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'tool/ruby_vm/scripts')
-rw-r--r--tool/ruby_vm/scripts/insns2vm.rb10
1 files changed, 6 insertions, 4 deletions
diff --git a/tool/ruby_vm/scripts/insns2vm.rb b/tool/ruby_vm/scripts/insns2vm.rb
index f76ba2322f..a04394ab27 100644
--- a/tool/ruby_vm/scripts/insns2vm.rb
+++ b/tool/ruby_vm/scripts/insns2vm.rb
@@ -14,13 +14,14 @@ require 'optparse'
require_relative '../controllers/application_controller.rb'
def router argv
- targets = generate_parser.parse argv
+ options = { destdir: Dir.getwd }
+ targets = generate_parser(options).parse argv
return targets.map do |i|
- next ApplicationController.new.generate i
+ next ApplicationController.new.generate i, options[:destdir]
end
end
-def generate_parser
+def generate_parser(options)
OptionParser.new do |this|
this.on "-I", "--srcdir=DIR", <<-'end'
Historically this option has been passed to the script. This is
@@ -78,7 +79,8 @@ def generate_parser
THIS IS THE ONLY OPTION THAT WORKS today. Change destination
directory from the current working directory to the given path.
begin
- Dir.chdir dir
+ raise "directory was not found in '#{dir}'" unless Dir.eixst?(dir)
+ options[:destdir] = dir
end
this.on "-V", "--[no-]verbose", <<-'end'