#!/usr/bin/env bash
while Illegal character “"” in page name. do
case "${1}" in
- d) disp_deptree=TRUE ;;
- a) disp_pkg=TRUE ;;
- p) disp_ports=TRUE ;;
- h) cat <<EOF
This tool will walk all your installed packages for out-of-date ports. You must update your ports tree before this will be accurate.
- d Display deptree
- a Display list of out-of-date packages
- p Display list of port directory names corresponding to out-of-date packages
EOF
exit 8 ;;
*) echo "Unknown option: ${1}"; echo "${0} -h for help"; exit 8 ;; esac shift
done
str_repeat() {
repeat="${1}" while Illegal character “"” in page name. do
echo -n "${2}" repeat=$(( ${repeat} - 1))
done
} clear_deps() {
depth=0 storevar="list_${depth}" eval list=\${${storevar}} while Illegal character “"” in page name. do
echo "Clearing $storevar" unset $storevar depth=$(( ${depth} + 1 )) storevar="list_${depth}" eval list=\${${storevar}}
done
} resolve_deps(){
depth="${1}" storevar="list_${depth}" shift while Illegal character “"” in page name. do
Illegal character “"” in page name. && str_repeat ${depth} - Illegal character “"” in page name. && echo "${1}" eval ${storevar}="\"\${${storevar}} ${1}\"" deps=$(pkg_info -Rq "${1}" | sed -e '/^$/d') if Illegal character “"” in page name. then
resolve_deps $(( ${depth} + 1 )) ${deps} depth=$(( ${depth} - 1 )) storevar="list_${depth}"
fi shift
done
} print_deps() {
depth=0 storevar="$(printf "list_%u" "${depth}")" eval list=\${${storevar}} while Illegal character “"” in page name. do
for item in ${list} do
printf "%u\t%s\n" "${depth}" "${item}"
done depth=$(( ${depth} + 1 )) storevar="list_${depth}" eval list=\${${storevar}}
done
} clear_deps Illegal character “"” in page name. && echo "" resolve_deps 0 $(pkg_version -vl '<' | cut -d' ' -f1)
Illegal character “"” in page name. && echo "" Illegal character “"” in page name. && print_deps | sort --key=2 --reverse | uniq -f 1 | sort | cut -f 2
Illegal character “"” in page name. && echo "" Illegal character “"” in page name. && print_deps | sort --key=2 --reverse | uniq -f 1 | sort | cut -f2 | while read name do
pkgdb -qo "${name}"
done