From 1b83653fb12f7e7b250fd71824559fd43c4e1ed2 Mon Sep 17 00:00:00 2001 From: Eduardo Habkost Date: Mon, 14 Jun 2010 21:31:05 -0300 Subject: [PATCH 13/13] make-release: make mtime, owner, group consistent RH-Author: Eduardo Habkost Message-id: <20100614213105.GM14947@blackpad.lan.raisama.net> Patchwork-id: 9902 O-Subject: [RHEL-6 qemu-kvm PATCH] make-release: make mtime, owner, group consistent Bugzilla: Patch included upstream, useful for the generation of RPMs from git. I won't ask for ACKs (althought they are welcome) because the script is not used by our official builds. ------------- >From "Michael S. Tsirkin" Files from git have modification time set to one of commit, and owner/group to root. Making it so for generated files as well makes it easier to generate an identical tarball from git. Setting owner/group to root is especially important because otherwise you must have a user/group with same name to generate an identical tarball. Signed-off-by: Michael S. Tsirkin --- kvm/scripts/make-release | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) Signed-off-by: Eduardo Habkost --- kvm/scripts/make-release | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) diff --git a/kvm/scripts/make-release b/kvm/scripts/make-release index fdc402b..e8051f4 100755 --- a/kvm/scripts/make-release +++ b/kvm/scripts/make-release @@ -1,7 +1,7 @@ #!/bin/bash -e usage() { - echo "usage: $0 [--upload] [--formal] commit [name] [tarball]" + echo "usage: $0 [--upload] [--formal] commit [name] [tarball] [user]" exit 1 } @@ -51,17 +51,22 @@ cd "$(dirname "$0")"/../.. mkdir -p "$(dirname "$tarball")" git archive --prefix="$name/" --format=tar "$commit" > "$tarball" +mtime=`git show --format=%ct "$commit" --` +tarargs="--owner=root --group=root --mtime=@$mtime" + mkdir -p "$tmpdir" git cat-file -p "${commit}:roms" | awk ' { print $4, $3 } ' \ > "$tmpdir/EXTERNAL_DEPENDENCIES" tar -rf "$tarball" --transform "s,^,$name/," -C "$tmpdir" \ + $tarargs \ "EXTERNAL_DEPENDENCIES" rm -rf "$tmpdir" if [[ -n "$formal" ]]; then mkdir -p "$tmpdir" echo "$name" > "$tmpdir/KVM_VERSION" - tar -rf "$tarball" --transform "s,^,$name/," -C "$tmpdir" "KVM_VERSION" + tar -rf "$tarball" --transform "s,^,$name/," -C "$tmpdir" "KVM_VERSION" \ + $tarargs rm -rf "$tmpdir" fi -- 1.7.0.3