# HG changeset patch # User Pascal Bellard # Date 1215096909 0 # Node ID 8827b1b4f0653567ed886d4ce171cad8b19bae7e # Parent b82d34244ec4fc84d51df1524f6469410643ff87 do tazwok cmp EXTRAVERSION proof diff -r b82d34244ec4 -r 8827b1b4f065 tazwok --- a/tazwok Wed Jul 02 21:28:00 2008 +0000 +++ b/tazwok Thu Jul 03 14:55:09 2008 +0000 @@ -394,6 +394,7 @@ check_root check_for_package_on_cmdline check_for_receipt + EXTRAVERSION="" . $RECEIPT check_for_wanted cd $WOK/$PACKAGE @@ -581,25 +582,29 @@ ================================================================================" for pkg in $WOK/* do - EXTRAVERSION="" . $pkg/receipt - echo "$PACKAGE-$VERSION$EXTRAVERSION.tazpkg" >> /tmp/wok.list - if [ ! -f $PACKAGES_REPOSITORY/$PACKAGE-$VERSION$EXTRAVERSION.tazpkg ]; then - echo "Missing package: $PACKAGE ($VERSION$EXTRAVERSION)" + echo "$PACKAGE-$VERSION.tazpkg" >> /tmp/wok.list + if [ -z "$(ls $PACKAGES_REPOSITORY/$PACKAGE-$VERSION*.tazpkg 2>-)" ]; then + echo "Missing package: $PACKAGE ($VERSION)" echo "$PACKAGE" >> /tmp/pkgs.missing fi done for pkg in `cd $PACKAGES_REPOSITORY && ls *.tazpkg` do - if ! grep -q ^$pkg /tmp/wok.list; then - echo $pkg >> /tmp/pkgs.old - if [ "$2" = "--remove" ]; then - echo "Removing package: $pkg" - rm $PACKAGES_REPOSITORY/$pkg - else - echo "Old package: $pkg" - fi - fi + # grep $pkg in /tmp/wok.list, may include EXTRAVERSION + for i in $(grep ^${pkg%_*}.*tazpkg /tmp/wok.list); do + case "$pkg" in + ^${i%.tazpkg}*.tazpkg) continue 2;; + esac + done + # not found + echo $pkg >> /tmp/pkgs.old + if [ "$2" = "--remove" ]; then + echo "Removing package: $pkg" + rm $PACKAGES_REPOSITORY/$pkg + else + echo "Old package: $pkg" + fi done cd /tmp echo "================================================================================"