blob: c256e261c77ff600fe4fac34065b9005989d9e2a [file] [log] [blame] [edit]
#!/bin/sh
B=../../out/build
if [ ! -d "$B" ]; then
echo "$B does not exist; build the software first." >&2
exit 1
fi
startswith() {
[ "$1" != "${1#"$2"}" ]
}
all_packages() {
local stamp dir pkg
(
for stamp in $(cd $B && echo */.stamp_* */.configured); do
dir=$(dirname $stamp)
[ -L "$B/$dir" ] && continue
pkg=${dir%%-[0-9]*}
pkg=${pkg%%-HEAD}
pkg=${pkg%%-master}
pkg=${pkg%%-[svRr][0-9]*}
startswith "$pkg" host- && continue
echo "$pkg"
done
# Include all .jar files from SageTV
for jar in $(cd $B/google_sageserver-HEAD/build/bruno && find -name '*.jar'); do
echo "google_sageserver/$(basename "$jar")"
done
) | sort | uniq
}
all_packages | while read pkg; do
found=
if [ "$pkg" != "${pkg#*/}" ]; then
# contains a slash, it's a particular filename
[ -e "licenses/$pkg" ] && found=1
fi
# it's probably just a package name, so match any file in that package.
for d in licenses/$pkg/*; do
[ -e "$d" ] && found=1 && break
done
[ -n "$found" ] || echo "$pkg"
done