3 # Script to create seabios release and snapshot tarballs.
4 # Accepts conmmit (hash, tag, branch, ...) as first argument,
5 # uses HEAD if unspecified.
10 # figure name for the tarball
11 reltag="$(git describe --tags --match 'rel-*' --exact $commit 2>/dev/null)"
12 if test "$reltag" != ""; then
17 reltag="$(git describe --tags --match 'rel-*' $commit 2>/dev/null)"
18 name="snap-${reltag#rel-}"
21 # export tarball archive from git
22 prefix="seabios-${name}/"
23 output="seabios-${name}.tar"
24 echo "# commit $commit -> tarball: ${output}.gz"
25 rm -f "$output" "${output}.gz"
26 git archive --format=tar --prefix="$prefix" "$commit" > "$output"
28 # add .version file to tarball
29 dotver="$(mktemp dotver.XXXXXX)"
30 echo "$name" > "$dotver"
31 tar --append --file="$output" --owner=root --group=root --mode=0664 \
32 --transform "s:${dotver}:${prefix}.version:" "$dotver"