cookutils annotate cookall.sh @ rev 707
cookall.sh: skip broken packages
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Wed Mar 04 10:58:57 2015 +0100 (2015-03-04) |
parents | 073f946f667b |
children | 372c6cceec71 |
rev | line source |
---|---|
pascal@706 | 1 #!/bin/sh |
pascal@706 | 2 |
pascal@706 | 3 DONELIST=${1:-/tmp/donelist} |
pascal@706 | 4 |
pascal@706 | 5 . /home/slitaz/wok/slitaz-toolchain/receipt |
pascal@706 | 6 SLITAZ_TOOLCHAIN="slitaz-toolchain $DEPENDS" |
pascal@706 | 7 touch $DONELIST |
pascal@706 | 8 while true; do |
pascal@706 | 9 chmod +x $DONELIST |
pascal@706 | 10 for i in /home/slitaz/wok/*/receipt ; do |
pascal@707 | 11 pkg=$(basename ${i%/receipt}) |
pascal@707 | 12 grep -q "^$pkg$" $DONELIST && continue |
pascal@707 | 13 grep -q "^$pkg$" /home/slitaz/cache/broken && continue |
pascal@706 | 14 unset BUILD_DEPENDS WANTED |
pascal@706 | 15 . $i |
pascal@706 | 16 for j in $BUILD_DEPENDS $WANTED ; do |
pascal@706 | 17 case " $SLITAZ_TOOLCHAIN " in |
pascal@706 | 18 *\ $j\ *) continue ;; |
pascal@706 | 19 esac |
pascal@706 | 20 grep -q "^$j$" $DONELIST || continue 2 |
pascal@706 | 21 done |
pascal@706 | 22 cooker pkg $PACKAGE |
pascal@706 | 23 [ /home/slitaz/packages/$PACKAGE-$VERSION*.tazpkg -nt $DONELIST ] || continue |
pascal@706 | 24 echo $PACKAGE >> $DONELIST |
pascal@706 | 25 chmod -x $DONELIST |
pascal@706 | 26 done |
pascal@706 | 27 [ -x $DONELIST ] || continue |
pascal@706 | 28 # try to break build dep loops... |
pascal@707 | 29 for pkg in gettext python udev cups libQtClucene menu-cache ; do |
pascal@707 | 30 grep -q "^$pkg$" $DONELIST && continue |
pascal@707 | 31 grep -q "^$pkg$" /home/slitaz/cache/broken && continue |
pascal@707 | 32 . /home/slitaz/wok/$pkg/receipt |
pascal@706 | 33 cooker pkg $PACKAGE |
pascal@706 | 34 [ /home/slitaz/packages/$PACKAGE-$VERSION*.tazpkg -nt $DONELIST ] || continue |
pascal@706 | 35 echo $PACKAGE >> $DONELIST |
pascal@706 | 36 continue 2 |
pascal@706 | 37 done |
pascal@706 | 38 break |
pascal@706 | 39 done |
pascal@706 | 40 |
pascal@706 | 41 TODOLIST=/tmp/todolist |
pascal@706 | 42 # list packages to build and their (build) dependancies |
pascal@706 | 43 for i in /home/slitaz/wok/*/receipt ; do |
pascal@706 | 44 grep -q "^$(basename ${i%/receipt})$" $DONELIST && continue |
pascal@706 | 45 unset BUILD_DEPENDS WANTED |
pascal@706 | 46 . $i |
pascal@706 | 47 echo -n "$PACKAGE : " |
pascal@706 | 48 for j in $BUILD_DEPENDS $WANTED ; do |
pascal@706 | 49 grep -q "^$j$" $DONELIST || echo -n "$j " |
pascal@706 | 50 done |
pascal@706 | 51 echo |
pascal@706 | 52 done > $TODOLIST |
pascal@706 | 53 echo "$(wc -l $TODOLIST) packages unbuilt in $TODOLIST" |
pascal@706 | 54 |