Update release script
[b43-tools.git] / fwcutter / makerelease.sh
1 #!/bin/bash
2 set -e
3
4 project="b43-fwcutter"
5
6 origin="$(dirname "$0")"
7 [ "${origin:0:1}" = "/" ] || origin="$PWD/$origin"
8
9 do_git_tag=1
10 [ "$1" = "--notag" ] && do_git_tag=0
11
12 version="$(cat $origin/Makefile | grep -e VERSION | head -n1 | cut -d' ' -f3)"
13 if [ -z "$version" ]; then
14         echo "Could not determine version!"
15         exit 1
16 fi
17 tmpdir="/tmp"
18 release_name="$project-$version"
19 tarball="$release_name.tar.bz2"
20
21 export GIT_DIR="$origin/../.git"
22
23 rm -Rf "$tmpdir/$release_name"
24 echo "Creating target directory"
25 mkdir -p "$tmpdir/$release_name"
26 cd "$tmpdir/$release_name"
27 echo "git checkout"
28 git checkout -f
29 mv fwcutter $release_name
30 targetdir="$tmpdir/$release_name/$release_name"
31
32 rm "$targetdir/makerelease.sh"
33
34 echo "creating tarball"
35 cd "$targetdir/.."
36 tar cjf "$tarball" "$release_name"
37 mv "$tarball" "$origin"
38
39 echo "running testbuild"
40 cd "$targetdir"
41 make
42
43 echo "removing testbuild"
44 rm -R "$tmpdir/$release_name"
45
46 if [ "$do_git_tag" -ne 0 ]; then
47         echo "Tagging GIT"
48         cd "$origin"
49         git tag -m "$tagmsg" -a "$tagname"
50 fi
51
52 echo
53 echo "built release $version"