Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / seabios / scripts / tarball.sh
diff --git a/qemu/roms/seabios/scripts/tarball.sh b/qemu/roms/seabios/scripts/tarball.sh
new file mode 100755 (executable)
index 0000000..06d8554
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/sh
+#
+# Script to create seabios release and snapshot tarballs.
+# Accepts conmmit (hash, tag, branch, ...) as first argument,
+# uses HEAD if unspecified.
+#
+
+commit="${1-HEAD}"
+
+# figure name for the tarball
+reltag="$(git describe --tags --match 'rel-*' --exact $commit 2>/dev/null)"
+if test "$reltag" != ""; then
+       # release
+       name="${reltag#rel-}"
+else
+       # snapshot
+       reltag="$(git describe --tags --match 'rel-*' $commit 2>/dev/null)"
+       name="snap-${reltag#rel-}"
+fi
+
+# export tarball archive from git
+prefix="seabios-${name}/"
+output="seabios-${name}.tar"
+echo "# commit $commit  ->  tarball: ${output}.gz"
+rm -f "$output" "${output}.gz"
+git archive --format=tar --prefix="$prefix" "$commit" > "$output"
+
+# add .version file to tarball
+dotver="$(mktemp dotver.XXXXXX)"
+echo "$name" > "$dotver"
+tar --append --file="$output" --owner=root --group=root --mode=0664 \
+       --transform "s:${dotver}:${prefix}.version:" "$dotver"
+rm -f "$dotver"
+
+# finally compress it
+gzip "$output"