Make wmaker XRandR aware
[wmaker-crm.git] / debian / nightly_build.sh
blobc90ec11e2b7a1b587041563a574225911ef1edaf
1 #!/bin/sh
3 CHLOGBKP="/tmp/$$-chlog"
4 BASEVERSION="0.93.0"
5 REPOVERSION="git-`date +%Y%m%d-%H%M`"
7 CHANGELOG="Automatic build from the GIT on `date`"
8 BUILDLOG="${HOME}/log/wmaker-testing-nightly.log"
10 STATUSCMD="git log -1 --pretty=oneline"
11 PULLCMD="git pull --rebase"
12 if [ -n "${WMAKER_DISTRO}" ]; then
13 case ${WMAKER_DISTRO} in
14 unstable)
15 BUILDLOG="${HOME}/log/wmaker-unstable-nightly.log"
17 esac
20 FORCE="0"
22 if [ $# -gt 0 ]; then
23 case $1 in
24 -f|--force)
25 FORCE="1"
28 echo "Usage $0 [-f|--force]"
29 exit 0
31 esac
34 cleanup() {
35 test -f ${CHLOGBKP} && mv ${CHLOGBKP} debian/changelog
38 errorExit() {
39 echo "$@" 1>&2
40 cleanup
41 exit 2
44 doPull() {
45 RC="1"
46 LATEST="`$STATUSCMD`"
47 git reset --hard HEAD
48 git clean -f
49 $PULLCMD >>$BUILDLOG 2>&1 || errorExit "Error pulling from the repo"
50 CURRENT="`$STATUSCMD`"
51 if [ "$FORCE" = "1" -o "$LATEST" != "$CURRENT" ]; then
52 echo "last revision: $LATEST" >>$BUILDLOG
53 echo "new revision: $CURRENT" >>$BUILDLOG
54 echo "FORCE: $FORCE" >>$BUILDLOG
55 RC="0"
56 else
57 echo "No changes to build, and FORCE not given." >>$BUILDLOG
59 return $RC
62 doEnv() {
63 for var in `env | grep GNUSTEP | sed "s/=.*//"`; do
64 unset $var
65 done
68 doChlog() {
69 cp debian/changelog ${CHLOGBKP}
70 debchange -v ${BASEVERSION}-${REPOVERSION}-1 "${CHANGELOG}" || return 1
73 doTarball() {
74 echo tar -czf ../wmaker_${BASEVERSION}-${REPOVERSION}.orig.tar.gz .
75 tar -czf ../wmaker_${BASEVERSION}-${REPOVERSION}.orig.tar.gz .
78 doBuild() {
79 ARGS=""
80 if [ -n "${WM_GPG_KEY}" ]; then
81 ARGS="-k${WM_GPG_KEY}"
83 dpkg-buildpackage -rfakeroot $ARGS >>${BUILDLOG} 2>&1
86 install -d `dirname $BUILDLOG`
87 >$BUILDLOG
88 trap 'cleanup; exit 2' 2
89 trap 'cleanup; exit 2' 9
90 trap 'cleanup; exit 2' 15
92 test -d debian || errorExit "This script must be called from the toplevel source dir, ./debian must exist."
94 #git status | grep modified: | awk '{ print $3 }' | xargs git checkout
95 git checkout -f >/dev/null
96 RC=0
97 if doPull ; then
98 doEnv
99 doChlog || errorExit "Error adding new changelog entry."
100 doTarball || errorExit "Error building source tarball."
101 doBuild || errorExit "Error during build of .deb package."
102 else
103 RC=1
106 cleanup
107 exit $RC