mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
make-snapshot: support xz
* tool/make-snapshot (package): support xz. no longer runs with 1.8 or earlier. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
a03eeb000a
commit
944ff17f8a
1 changed files with 32 additions and 6 deletions
|
@ -27,6 +27,13 @@ each versions may be followed by optional @revision.
|
|||
USAGE
|
||||
end
|
||||
|
||||
PACKAGES = {
|
||||
"bzip" => %w".tar.bz2 bzip2 -c",
|
||||
"gzip" => %w".tar.gz gzip -c",
|
||||
"xz" => %w".tar.xz xz -c",
|
||||
"zip" => %w".zip zip -qr",
|
||||
}
|
||||
|
||||
ENV["LC_ALL"] = ENV["LANG"] = "C"
|
||||
SVNURL = URI.parse("http://svn.ruby-lang.org/repos/ruby/")
|
||||
RUBY_VERSION_PATTERN = /^\#define\s+RUBY_VERSION\s+"([\d.]+)"/
|
||||
|
@ -270,13 +277,32 @@ def package(rev, destdir)
|
|||
v = File.basename(v)
|
||||
end
|
||||
|
||||
return [["bzip tarball", ".tar.bz2", %w"tar cjf"],
|
||||
["gzip tarball", ".tar.gz", %w"tar czf"],
|
||||
["zip archive", ".zip", %w"zip -qr"]
|
||||
].collect do |mesg, ext, cmd|
|
||||
tarball = nil
|
||||
return PACKAGES.collect do |mesg, (ext, *cmd)|
|
||||
File.directory?(destdir) or FileUtils.mkpath(destdir)
|
||||
file = File.join(destdir, "#{$archname||v}#{ext}")
|
||||
print "creating #{mesg}... #{file}"
|
||||
if system(*(cmd + [file, v]))
|
||||
case ext
|
||||
when /\.tar/
|
||||
if tarball
|
||||
next if tarball.empty?
|
||||
else
|
||||
tarball = "#{$archname||v}.tar"
|
||||
print "creating tarball... #{tarball}"
|
||||
if system("tar", "cf", tarball, v)
|
||||
puts " done"
|
||||
else
|
||||
puts " failed"
|
||||
tarball = ""
|
||||
next
|
||||
end
|
||||
end
|
||||
print "creating #{mesg} tarball... #{file}"
|
||||
done = system(*(cmd + [tarball]), out: file)
|
||||
else
|
||||
print "creating #{mesg} archive... #{file}"
|
||||
done = system(*(cmd + [file, v]))
|
||||
end
|
||||
if done
|
||||
puts " done"
|
||||
file
|
||||
else
|
||||
|
|
Loading…
Add table
Reference in a new issue