#!/bin/sh
update=true
-if test "$1" == "-f"; then
- shift
- update=false
-fi
PKG="$1"
if test -z "$PKG"; then
+ if test -d deb-src; then
+ cd deb-src
+ for d in *.dsc; do
+ PKG=$d
+ done
+ fi
+fi
+if test -z "$PKG"; then
echo "Specify .dsc file"
exit 1
fi
echo "${PKG} does not exist"
exit 1
fi
-for dist in etch lenny; do
- for arch in i386 amd64; do
- if $update; then
- DIST=$dist ARCH=$arch pbuilder update --override-config
- fi
- DIST=$dist ARCH=$arch pbuilder --build $PKG
+PRODUCT=`echo *.dsc|sed 's/_.*//g'`
+if test -z "$DEBIAN_DIST"; then
+ DEBIAN_DIST="squeeze etch lenny"
+fi
+if test -z "$UBUNTU_DIST"; then
+ UBUNTU_DIST="karmic jaunty intrepid hardy"
+fi
+
+if test "$2" = "upload"; then
+ for dist in ${UBUNTU_DIST}; do
+ scp ${dist}-*/* ftp.indexdata.dk:/home/ftp/pub/${PRODUCT}/ubuntu/${dist}
+ done
+ for dist in ${DEBIAN_DIST}; do
+ scp ${dist}-*/* ftp.indexdata.dk:/home/ftp/pub/${PRODUCT}/debian/${dist}
done
+ echo "Remember to update APT on ftp.indexdata.dk"
+ echo "cd git-tools/update-archive"
+ echo "sudo su"
+ echo "./update-archive.sh"
+ exit 0
+fi
+i=0
+concurrency=4
+echo "Building $PKG"
+date
+for dist in ${DEBIAN_DIST} ${UBUNTU_DIST}; do
+ for arch in i386 amd64; do
+ rm -fr ${dist}-${arch}
+ (
+ if test ! -f /var/cache/pbuilder/${dist}-${arch}-base.tgz; then
+ DIST=$dist ARCH=$arch pbuilder create
+ fi
+ if $update; then
+ DIST=$dist ARCH=$arch pbuilder update --override-config
+ fi
+ DIST=$dist ARCH=$arch pbuilder --build $PKG
+ ) >${dist}-${arch}.log 2>&1 &
+ i=`expr $i + 1`
+ if test $i -eq $concurrency; then
+ i=0
+ wait
+ fi
+ done
+done
+wait
+for dist in ${DEBIAN_DIST} ${UBUNTU_DIST}; do
+ for arch in i386 amd64; do
+
+ if test -f ${dist}-${arch}/*.dsc; then
+ :
+ else
+ echo "No .dsc file for ${dist}-${arch}"
+ exit 1
+ fi
+ done
done
+date
+echo "Done"