137: def run
138: ENV['MSPEC_RUNNER'] = '1'
139: ENV['RUBY_EXE'] = config[:target]
140: ENV['RUBY_FLAGS'] = config[:flags].join " "
141:
142: argv = []
143: argv.concat config[:flags]
144: argv.concat config[:includes]
145: argv.concat config[:requires]
146: argv << "-v"
147: argv << "#{MSPEC_HOME}/bin/mspec-#{ config[:command] || "run" }"
148: argv.concat config[:options]
149:
150: if config[:multi] and config[:command] == "ci"
151: multi_exec argv
152: else
153: if config[:use_gdb]
154: more = ["--args", config[:target]] + argv
155: exec "gdb", *more
156: else
157: exec config[:target], *argv
158: end
159: end
160: end