exit 1
}
+warn () {
+ case $build in
+ release) fail "$*" ;;
+ *) notify 5 "??? $*" ;;
+ esac
+}
+
info () {
notify 6 "--- $*"
}
;;
esac
-## Maybe check out a copy of the source.
+## Do we have a Git repository?
case "$checkout,$setup,$(yesno [ -d $srcpath/.git ])" in
yes,no,*)
fail "Inconsistent options: can't check out without setup."
;;
yes,yes,no)
info "No Git repository found."
+ checkout=no gitver=none
;;
yes,yes,yes)
cd $srcpath
[ "$(git ls-files -m)" = "" ] ||
- fail "working tree has uncommitted changes"
+ warn "working tree has uncommitted changes"
+ gitver=$(git describe)
+esac
+
+## Is there Debian build equipment?
+case "$debian,$(yesno [ -d $srcpath/debian ])" in
+ yes,no)
+ info "No debian directory found."
+ debian=no debver=none
+ ;;
+ yes,yes)
+ debver=$(dpkg-parsechangelog | sed -n 's/^Version: //p')
+ ;;
+esac
+
+## Check the version number.
+case "$gitver,$debver" in
+ none,* | *,none)
+ ;;
+ *)
+ [ "$gitver" = "$debver" ] ||
+ warn "Git version $gitver doesn't match Debian version $debver"
+ ;;
+esac
+
+## Maybe check ot a copy of the source.
+case "$checkout" in
+ yes)
cd $releasepath
run git clone -sn $srcpath/.git _source
assign srcpath $releasepath/_source
run mv $buildpath/$distdir.tar.gz .
## Maybe build the Debian packages.
-case "$debian,$(yesno [ -d $srcpath/debian ])" in
- yes,no)
- info "No debian directory found."
- debian=no
- ;;
- yes,yes)
+case "$debian" in
+ yes)
run tar xvfz $distdir.tar.gz
cd $distdir
run dpkg-buildpackage -k$(mdw-conf releasekey)