diff options
author | Avi Kivity <avi@redhat.com> | 2009-05-14 18:08:03 +0300 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2009-05-14 18:16:06 +0300 |
commit | 6b2213b05acf4b7d6e4b2fa604358e77b02bac50 (patch) | |
tree | 71f73c2c0238a0a55fd6ada9fa8c4fb01fb2e0ad | |
parent | 1d32b43964a253f0e36ea6a1c5f6c4c967d98aa6 (diff) |
Add script to make a combined userspace/kernel releasekvm-86rc1
Signed-off-by: Avi Kivity <avi@redhat.com>
-rwxr-xr-x | kvm/scripts/make-combined-release | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/kvm/scripts/make-combined-release b/kvm/scripts/make-combined-release new file mode 100755 index 000000000..adef8f610 --- /dev/null +++ b/kvm/scripts/make-combined-release @@ -0,0 +1,36 @@ +#!/usr/bin/python + +import sys, tarfile, os.path + +# usage: $0 combined.tar.gz qemu.tar.gz kvm-kmod.tar.gz + +outname, qemuname, kmodname = sys.argv[1:4] + +out = tarfile.open(name = outname, mode = 'w:gz') + +def tarcopy(dst, src, transform): + for member in src: + f = src.extractfile(member) + member.name = transform(member.name) + dst.addfile(member, f) + +def stem(fname): + fname = os.path.basename(fname) + if fname.endswith('.tar.gz'): + fname = fname[:-7] + return fname + +def transformer(old, new): + def transform(fname): + if fname.startswith(old + '/'): + fname = new + fname[len(old):] + return fname + return transform + +tarcopy(out, tarfile.open(name = qemuname), + transformer(stem(qemuname), stem(outname))) + +tarcopy(out, tarfile.open(name = kmodname), + transformer(stem(kmodname), stem(outname) + '/kvm/kernel')) + + |