def make_tarball!(tar_path, builddir)
tmpdir = "#{tar_path}.dir"
gem = @paths.first
if self[:prefix]
installdir = "#{tmpdir}/#{self[:prefix]}"
@paths = [ self[:prefix] ]
else
installdir = File.join(tmpdir, ::Gem::dir)
@paths = [ ::Gem::dir ]
end
::FileUtils.mkdir_p(installdir)
args = [self[:settings][:gem], "install", "--quiet", "--no-ri", "--no-rdoc",
"--install-dir", installdir, "--ignore-dependencies", "-E"]
if self[:settings][:bin_path]
tmp_bin_path = File.join(tmpdir, self[:settings][:bin_path])
args += ["--bindir", tmp_bin_path]
@paths << self[:settings][:bin_path]
FileUtils.mkdir_p(tmp_bin_path)
end
args << gem
safesystem(*args)
tar(tar_path, @paths.collect {|p| ".#{p}"}, tmpdir)
FileUtils.rm_r(tmpdir)
safesystem(*["gzip", "-f", tar_path])
end