--- /usr/bin/revdep-rebuild +++ revdep-rebuild @@ -209,7 +209,7 @@ echo -n >$LLIST.4_packages_raw echo -n >$LLIST.4_package_owners cat $LLIST.3_rebuild | while read FILE ; do - PKG=$(fgrep -l $FILE /var/db/pkg/*/*/CONTENTS|sed -e 's:/var/db/pkg/\(.*\)/CONTENTS:\1:g' -e "s:-r[0-9]\+$::" -e "s:-[0-9][^-]*$::") + PKG=$(find /var/db/pkg -name CONTENTS | xargs fgrep -l $FILE | sed -e 's:/var/db/pkg/\(.*\)/CONTENTS:\1:g' -e "s:-r[0-9]\+$::" -e "s:-[0-9][^-]*$::") if [ -z "$PKG" ] ; then echo -n -e "\n ${RD}*** $FILE not owned by any package is broken! ***${NO}" echo "$FILE -> (none)" >> $LLIST.4_package_owners @@ -246,11 +246,8 @@ else if [ -s "$LLIST.3_rebuild" ] ; then set_trap "$LLIST.4_ebuilds" - cat $LLIST.3_rebuild | sed 's/^/obj /;s/$/ /' | - ( - cd /var/db/pkg - fgrep -l -f - */*/CONTENTS - ) | sed s:/CONTENTS:: > $LLIST.4_ebuilds + find /var/db/pkg -name CONTENTS | xargs fgrep -l -f <(sed 's/^/obj /;s/$/ /' $LIST.3_rebuild) | + sed 's:/var/db/pkg/\(.*\)/CONTENTS:\1:' > $LLIST.4_ebuilds echo -e " done.\n ($LLIST.4_ebuilds)" else echo " Nothing to rebuild"