X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=id-deb-build%2Fid-pbuild-all.sh;h=3af753a38854eb3a61d908823ecf02eceea04217;hb=07b65691f3d98408993e1b417a91e5e8e37d8e38;hp=13b6048e07e86a45135496e1db07f58378eaf6e2;hpb=8a0a0e7d04e88aa949030d9671b185118afa5537;p=git-tools-moved-to-github.git diff --git a/id-deb-build/id-pbuild-all.sh b/id-deb-build/id-pbuild-all.sh index 13b6048..3af753a 100755 --- a/id-deb-build/id-pbuild-all.sh +++ b/id-deb-build/id-pbuild-all.sh @@ -2,6 +2,14 @@ update=true 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 @@ -9,11 +17,61 @@ if test ! -e "$PKG"; then echo "${PKG} does not exist" exit 1 fi -for dist in intrepid hardy 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"