--- revdep-rebuild.orig 2005-04-26 02:38:55.000000000 +0200 +++ revdep-rebuild 2005-07-05 21:24:36.000000000 +0200 @@ -23,9 +23,9 @@ LD_LIBRARY_MASK="libodbcinst.so libodbc.so libjava.so libjvm.so" # List of directories to be searched (feel free to edit it) -# Note /usr/libexec and /usr/local/subprefix cotradicts FHS, but are present +# Note /usr/libexec and /usr/local/subprefix contradicts FHS, but are present # /var/something is for cgi and similar scripts -SEARCH_DIRS="/lib /bin /sbin /usr/lib /usr/bin /usr/sbin /usr/libexec /usr/X11R6/lib /usr/X11R6/bin /usr/X11R6/sbin /usr/e1* /usr/local /usr/qt* /usr/kde/*/bin /usr/kde/*/lib /usr/*-*-linux-gnu /opt /var/qmail /var/vpopmail /home/httpd/cgi-bin" +SEARCH_DIRS="/lib /bin /sbin /usr/lib /usr/bin /usr/sbin /usr/libexec /usr/X11R6/lib /usr/X11R6/bin /usr/X11R6/sbin /usr/e1* /usr/local /usr/qt* /usr/kde/*/bin /usr/kde/*/lib /usr/*-*-linux-gnu /opt /var/qmail /var/vpopmail /home/httpd/cgi-bin" # Base of temporary files names. LIST=~/.revdep-rebuild @@ -48,6 +48,7 @@ SONAME="not found" SONAME_GREP=fgrep SEARCH_BROKEN=true +IGNORE_BINARY=false while : ; do case "$1" in @@ -63,6 +64,7 @@ echo " --soname-regexp SONAME" echo " the same as --soname, but accepts grep-style regexp" echo " -q, --quiet be less verbose" + echo " -b, --ignore-binary ignore binary packages" echo echo "Calls emerge, all other options are used for it (e. g. -p, --pretend)." echo @@ -73,6 +75,10 @@ PACKAGE_NAMES=true shift ;; + -b | --ignore-binary ) + IGNORE_BINARY=true + shift + ;; -q | --quiet ) alias echo_v=: shift @@ -138,7 +144,11 @@ echo echo "Checking reverse dependencies..." echo "Packages containing binaries and libraries $HEAD_TEXT," -echo "will be recompiled." +if $IGNORE_BINARY; then + echo "will be recompiled, binary packages will be omitted." +else + echo "will be recompiled." +fi echo echo -n -e "${GR}Collecting system binaries and libraries...${NO}" @@ -261,6 +271,18 @@ RAW_REBUILD_LIST="$(cat $LLIST.4_ebuilds | sed s/^/=/ | tr '\n' ' ')" fi +if $IGNORE_BINARY; then + echo + echo -n -e "${GR}Filtering out binary packages...${NO}" + RAW_REBUILD_LIST="$(echo $RAW_REBUILD_LIST | sed '/-bin$/d;/-bin-/d')" + if [ $? -eq 0 ]; then + echo -e " done.\n" + else + echo -e " failed.\n" + exit 1 + fi +fi + echo echo -n -e "${GR}Evaluating package order...${NO}" if [ -f $LLIST.5_order ] ; then