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:49:57 +0300 |
commit | e15f1abf50a07c626e7154fa2e41fb7e4277b142 (patch) | |
tree | 679ccc0aa5942ac6ecab34e446d97482353926a1 | |
parent | 22d239bcee126742df46938ee8ddc7c6b9209e23 (diff) |
Add script to make a combined userspace/kernel releasekvm-86rc2
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')) + + |