| 1 |
#!/bin/sh
|
| 2 |
# Outputs a list of source packages in the given tree. Optionally, can
|
| 3 |
# filter out source packages that generate debs; this is useful to get a
|
| 4 |
# list of udeb only source packages for manual syncing to testing (packages
|
| 5 |
# with debs are propigated automatically).
|
| 6 |
tree=$1
|
| 7 |
onlyudeb=$2
|
| 8 |
|
| 9 |
# Generate control files for kernel-wedged packages.
|
| 10 |
for c in $(find $tree -name control.stub); do
|
| 11 |
if [ ! -e "$(dirname $c)/control" ]; then
|
| 12 |
(cd $(dirname $(dirname $c)) ; debian/rules debian/control >/dev/null)
|
| 13 |
fi
|
| 14 |
done
|
| 15 |
|
| 16 |
for c in $(find $tree -name control); do
|
| 17 |
perl -ne '
|
| 18 |
BEGIN {
|
| 19 |
$onlyudeb=shift;
|
| 20 |
$/="\n\n";
|
| 21 |
}
|
| 22 |
if (/Source: (.*)/) {
|
| 23 |
$source=$1;
|
| 24 |
}
|
| 25 |
elsif (!/X?-Package-Type: udeb/ && !/^\s*$/) {
|
| 26 |
$deb=1;
|
| 27 |
}
|
| 28 |
END {
|
| 29 |
print "$source\n" if ! $onlyudeb || ! $deb;
|
| 30 |
}
|
| 31 |
' "$onlyudeb" $c
|
| 32 |
done
|