xcat-core/debperldepends

51 lines
1.2 KiB
Plaintext
Raw Normal View History

#!/bin/bash
#
# IBM(c) 2007 EPL license http://www.eclipse.org/legal/epl-v10.html
#
# Author: Isaac Freeman
#
# Make some wild guesses about what debian perl modules a package requires.
# Seems to work so far for xCAT.
#
# Scans the current directory.
#
found=""
# Warning: voodoo ahead
find . -name .svn -prune -o -type f \
| xargs grep -l '^#!.*perl' \
| xargs grep -hE '^\s*(use|require) ' \
| while read mod; do
pkg=$( awk '{ sub(";", "", $2);
gsub("::", "-", $2);
print $2 }' <<<"$mod" \
| tr '[:upper:]' '[:lower:]' )
pkgname="lib${pkg}-perl"
if apt-cache show $pkgname >/dev/null 2>&1; then
case "$found" in
*$pkgname*) continue ;;
*)
[ -n "$found" ] && echo -n ", "
echo -n "$pkgname"
found="$found $pkgname"
;;
esac
elif perl <<<"$mod" >/dev/null 2>&1; then
# Blindly assume that if perl doesn't complain about this, that its
# built-in to or ships with perl.
continue
elif [ "$1" == "-w" ]; then
echo
echo "warning: $pkg not found and perl doesn't like \"$mod\"" >&2
fi
done
echo
# vim: set sts=2 sw=2 et: