3 # Before running this script you have to have full-list-distfiles file
6 # Format of full-list-distfiles file:
8 # cd <path-to-distfiles>
9 # find by-md5 -type f -printf '%p\n'
11 # DO NOT REMOVE FOLLOWING FILES:
13 # active-list-distfiles
18 CVSROOT=":pserver:baggins@cvs.pld-linux.org:/cvsroot"
24 ICONS="`awk '/^Icon:/ {print $2}' ${1}`"
30 for TAG in $(cat .branches) ; do
31 cvs checkout -r "$TAG" SPECS
32 cvs up -A SPECS/builder
35 for spec in $(find -name "*.spec") ; do
36 grep -sq "$spec:$TAG" ../verified-specs-tags && continue
38 DF=$(./builder --no-init -sdp -nc -ncs "$spec" || echo $spec >>../list-distfiles-$TAG-errors)
40 echo $f | grep -qsE "^by-md5" || continue
41 echo $f >>../list-distfiles-auto-tags
42 echo $f.desc >>../list-distfiles-auto-tags
44 echo $spec:$TAG >>../verified-specs-tags
46 LISTFILES="$LISTFILES list-distfiles-$TAG"
51 cvs checkout -r 1.1 SPECS
52 cvs up -A SPECS/builder
54 for spec in $(find -name "*.spec") ; do
55 TAGS="$(cvs status -v "${spec}" | awk '!/Sticky Tag:/ && /\(branch:/ || /\(revision/ { print $1 } ' | grep -s -f ../.auto-tags | xargs)"
57 grep -sq "$spec:$rev" ../verified-specs-tags && continue
60 DF=$(./builder --no-init -sdp -nc -ncs "$spec" || echo $spec >>../list-distfiles-auto-tags-errors)
62 echo $f | grep -qsE "^by-md5" || continue
63 echo $f >>../list-distfiles-auto-tags
64 echo $f.desc >>../list-distfiles-auto-tags
66 echo $spec:$rev >>../verified-specs-tags
69 LISTFILES="$LISTFILES list-distfiles-auto-tags"
73 sort $LISTFILES active-list-distfiles | uniq >>active-list-distfiles.tmp
74 mv -f active-list-distfiles.tmp active-list-distfiles
78 # List only files that are in full-list-distfiles but
79 # not in active-list-distfiles
80 # Just uniq -u is not enough because you can remove files added during
83 sort active-list-distfiles full-list-distfiles | uniq -d | \
84 sort - full-list-distfiles | uniq -u >distfiles-remove-$D
86 cvs commit -m"- $D update" active-list-distfiles verified-specs-tags