Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 232270 - app-portage/gentoolkit-0.2.4_rc5: revdep-rebuild builds small SEARCH_DIRS with /etc/revdep-rebuild
Summary: app-portage/gentoolkit-0.2.4_rc5: revdep-rebuild builds small SEARCH_DIRS wit...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage Tools Team
URL:
Whiteboard:
Keywords: InVCS
: 234670 (view as bug list)
Depends on:
Blocks: 170220
  Show dependency tree
 
Reported: 2008-07-18 22:35 UTC by Wes
Modified: 2008-08-27 16:07 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
The contents of /etc/revdep-rebuild (etc_revdep-rebuild.tar.bz2,1.14 KB, application/octet-stream)
2008-07-20 09:34 UTC, Wes
Details
revdep-rebuild.232270.patch (revdep-rebuild.232270.patch,445 bytes, patch)
2008-07-21 16:54 UTC, Paul Varner (RETIRED)
Details | Diff
Better patch avoiding unsetting local variable (gentoolkit-0.2.4_rc5-search-fix.patch,616 bytes, patch)
2008-08-23 18:20 UTC, Ian Abbott
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Wes 2008-07-18 22:35:44 UTC
I noticed that my revdep-rebuild runs did not take very long and didn't find any breakages, even though I knew I broke something.  A verbose run of rr showed:

revdep-rebuild environment:
SEARCH_DIRS="/bin
/lib
/opt/bin"
SEARCH_DIRS_MASK="/lib/modules
/opt/sun-jdk-1.4.2.18
/opt/sun-jdk-1.5.0.15
/opt/sun-jdk-1.6.0.07
/opt/thunderbird
/usr/lib/real
/usr/lib/win32"
LD_LIBRARY_MASK="libjava.so
libjawt.so
libjvm.so
libodbc.so
libodbcinst.so"
PORTAGE_ROOT="/"
EMERGE_OPTIONS=""
ORDER_PKGS="1"
FULL_LD_PATH="1"


That SEARCH_DIRS is too small to accomplish anything.  Moving /etc/revdep-rebuild out of the way gave me a more sensible environment for finding breakages, but also includes a lot of dirs that should be masked:

revdep-rebuild environment:
SEARCH_DIRS="/bin
/lib
/opt/bin
/opt/sun-jdk-1.4.2.18/bin
/opt/sun-jdk-1.4.2.18/jre/bin
/opt/sun-jdk-1.4.2.18/jre/javaws
/opt/sun-jdk-1.4.2.18/jre/lib/i386/
/opt/sun-jdk-1.4.2.18/jre/lib/i386/classic/
/opt/sun-jdk-1.4.2.18/jre/lib/i386/native_threads/
/opt/sun-jdk-1.4.2.18/jre/lib/i386/server/
/opt/thunderbird
/sbin
/usr/bin
/usr/i686-pc-linux-gnu/gcc-bin/4.1.1
/usr/i686-pc-linux-gnu/gcc-bin/4.2.4
/usr/i686-pc-linux-gnu/lib
/usr/kde/3.5/bin
/usr/kde/3.5/lib
/usr/kde/3.5/sbin
/usr/lib
/usr/lib/fltk-1.1
/usr/lib/gcc/i686-pc-linux-gnu/4.2.4
/usr/lib/libstdc++-v3/
/usr/lib/nspr
/usr/lib/nss
/usr/lib/opengl/xorg-x11/lib
/usr/lib/oracle/10.2.0.3/client/lib
/usr/lib/qca1
/usr/lib/qt4
/usr/lib/subversion/bin
/usr/libexec
/usr/local/lib
/usr/qt/3/bin
/usr/qt/3/lib
/usr/sbin"
SEARCH_DIRS_MASK="/opt/OpenOffice
/usr/lib/openoffice"
LD_LIBRARY_MASK="libjava.so
libjvm.so
libodbc.so
libodbcinst.so"
PORTAGE_ROOT="/"
EMERGE_OPTIONS=""
ORDER_PKGS="1"
FULL_LD_PATH="1"


Reproducible: Always

Steps to Reproduce:
1. remove DirectFB
2. run revdep-rebuild
3.

Actual Results:  
Revdep-rebuild found nothing broken and exited

Expected Results:  
Packages built against DirectFB should be found and rebuilt
Comment 1 Paul Varner (RETIRED) gentoo-dev 2008-07-19 06:42:56 UTC
Please attach the files that are located in /etc/revdep-rebuild
Comment 2 Wes 2008-07-20 09:34:34 UTC
Created attachment 160903 [details]
The contents of /etc/revdep-rebuild
Comment 3 Paul Varner (RETIRED) gentoo-dev 2008-07-21 16:54:18 UTC
Created attachment 161011 [details, diff]
revdep-rebuild.232270.patch

Patch to fix the issue
Comment 4 Paul Varner (RETIRED) gentoo-dev 2008-07-21 16:54:55 UTC
$ svn commit -m "Fix filtering of masked paths from SEARCH_DIRS variable. (Bug 232270)" ChangeLog src/revdep-rebuild/revdep-rebuild
Sending        ChangeLog
Sending        src/revdep-rebuild/revdep-rebuild
Transmitting file data ..
Committed revision 498.
Comment 5 Wes 2008-07-21 18:51:55 UTC
That fixed it for me.  Thank you.

revdep-rebuild environment:
SEARCH_DIRS="/bin
/lib
/opt/bin
/opt/thunderbird
/sbin
/usr/bin
/usr/i686-pc-linux-gnu/gcc-bin/4.1.1
/usr/i686-pc-linux-gnu/gcc-bin/4.2.4
/usr/i686-pc-linux-gnu/lib
/usr/kde/3.5/bin
/usr/kde/3.5/lib
/usr/kde/3.5/sbin
/usr/lib
/usr/lib/fltk-1.1
/usr/lib/gcc/i686-pc-linux-gnu/4.2.4
/usr/lib/libstdc++-v3/
/usr/lib/nspr
/usr/lib/nss
/usr/lib/opengl/xorg-x11/lib
/usr/lib/oracle/10.2.0.3/client/lib
/usr/lib/qca1
/usr/lib/qt4
/usr/lib/subversion/bin
/usr/libexec
/usr/local/lib
/usr/qt/3
/usr/qt/3/bin
/usr/qt/3/lib
/usr/sbin"
SEARCH_DIRS_MASK="/lib/modules
/opt/sun-jdk-1.4.2.18
/opt/sun-jdk-1.5.0.15
/opt/sun-jdk-1.6.0.07
/opt/thunderbird
/usr/lib/real
/usr/lib/win32"
LD_LIBRARY_MASK="libjava.so
libjawt.so
libjvm.so
libodbc.so
libodbcinst.so"
PORTAGE_ROOT="/"
EMERGE_OPTIONS="-a"
ORDER_PKGS="1"
FULL_LD_PATH="1"
Comment 6 Paul Varner (RETIRED) gentoo-dev 2008-07-21 19:03:24 UTC
Leave open until I make a gentoolkit release with the fix.
Comment 7 Billy DeVincentis 2008-07-22 11:34:54 UTC
Against what is this patch applied to, I need revdep-rebuild to work but I'm not sure of what I should apply this patch to?
Comment 8 Paul Varner (RETIRED) gentoo-dev 2008-07-22 14:00:16 UTC
It is a patch for revdep-rebuild. Assuming the patch is named revdep-rebuild.232270.patch, do the following as root:

1. cd /usr/bin
2. patch -p0 < revdep-rebuild.232270.patch
Comment 9 Paul Varner (RETIRED) gentoo-dev 2008-08-13 21:02:23 UTC
*** Bug 234670 has been marked as a duplicate of this bug. ***
Comment 10 Ian Abbott 2008-08-23 18:20:55 UTC
Created attachment 163662 [details, diff]
Better patch avoiding unsetting local variable

Paul's patch 'revdep-rebuild.232270.patch' unsets the local variable 'skip_me' so that it is no longer local when it is set again.

My patch 'gentoolkit-0.2.4_rc5-search-fix.patch' sets 'skip_me' to an empty string instead.  (Also it does this before the inner loop rather than after, but that's just defensive programming.)
Comment 11 Paul Varner (RETIRED) gentoo-dev 2008-08-26 19:47:03 UTC
> Paul's patch 'revdep-rebuild.232270.patch' unsets the local variable 'skip_me'
> so that it is no longer local when it is set again.

Thanks, Ian.  I forgot that unsetting the variable would make it forget its local status.  I have changed it to use your patch in subversion.

$ svn commit -m "Update fix for Bug 232270 to utilize better patch from Ian Abbott." ChangeLog src/revdep-rebuild/revdep-rebuild
Sending        ChangeLog
Sending        src/revdep-rebuild/revdep-rebuild
Transmitting file data ..
Committed revision 508.
Comment 12 Paul Varner (RETIRED) gentoo-dev 2008-08-27 16:07:11 UTC
Released in gentoolkit-0.2.4_rc6