Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 169761 - revdep-rebuild -X does only rebuild present versions
Summary: revdep-rebuild -X does only rebuild present versions
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Tools (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage Tools Team
URL:
Whiteboard:
Keywords: InVCS
: 188668 188789 (view as bug list)
Depends on:
Blocks: 170220
  Show dependency tree
 
Reported: 2007-03-07 14:11 UTC by Xake
Modified: 2007-09-13 00:21 UTC (History)
2 users (show)

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


Attachments
revdep-rebuild -p > Desktop/revdep.log (revdep.log,1.08 KB, text/plain)
2007-03-07 20:26 UTC, Xake
Details
.revdep-rebuild.* for the log above (revdep.tar.bz2,50.57 KB, application/octet-stream)
2007-03-07 20:26 UTC, Xake
Details
revdep-rebuild -X -p > Desktop/revdep-x.log (revdep-x.log,1.13 KB, text/plain)
2007-03-07 20:29 UTC, Xake
Details
.revdep-rebuild.* for the log above (revdep-rebuild -X) (revdep-x.tar.bz2,50.68 KB, application/octet-stream)
2007-03-07 20:53 UTC, Xake
Details
revdep-rebuild --no-ld-path --package-names --pretend (no-ld-path.log,1.86 KB, text/plain)
2007-03-11 12:19 UTC, Xake
Details
bash -x revdep-rebuild --no-ld-path --package-names --pretend --keep-temp (bash-x-revdep.log.bz2,85.65 KB, application/octet-stream)
2007-03-11 13:11 UTC, Xake
Details
Tempfiles for the above logfile (bash-x-revdep-temp.tbz2,48.89 KB, application/octet-stream)
2007-03-11 13:12 UTC, Xake
Details
Output per request (emptytree.log.bz2,5.28 KB, application/octet-stream)
2007-03-12 09:21 UTC, Xake
Details
Patch for revdep-rebuild -X (revdep-rebuild.169761.patch,747 bytes, patch)
2007-03-13 00:34 UTC, Paul Varner (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Xake 2007-03-07 14:11:24 UTC
Ok, the last days I have had fun trying to fix what xcb-utils-0.2 did to my system and one thing I learned was: do not use revdep-rebuild -X in its current form.
Why?

revdep-rebuild -X finds a lot of files linked against "libXCBRender-whats-its-name-again" but failed with the comments emerge spits out when it finds a missing library during linking.
After a lot of playing around I saw that revdep-rebuild DID NOT try to rebuild ALL packages with broken deps.
After a closer look I found out it ONLY wanted to rebuild the versions not needing updating, ie. already present versions it tried to rebuild but versions (and dependencies) that had a update waiting it skipped.

emerge --info as follows.
Portage 2.1.2.1-r1 (default-linux/x86/2006.1/desktop, gcc-4.1.2, glibc-2.5-r0, 2.6.20-gentoo i686)
=================================================================
System uname: 2.6.20-gentoo i686 Intel(R) Pentium(R) 4 CPU 2.80GHz
Gentoo Base System release 1.13.0_alpha12
Timestamp of tree: Wed, 07 Mar 2007 10:50:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-java/java-config: 1.3.7, 2.0.31-r4
dev-lang/python:     2.5-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r6
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17.50.0.12
sys-devel/gcc-config: 1.3.15
sys-devel/libtool:   1.5.23b
virtual/os-headers:  2.6.20-r1
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -pipe -O2 -ggdb -ftree-loop-linear"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-march=pentium4 -pipe -O2 -ggdb -ftree-loop-linear -fvisibility-inlines-hidden"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS=""
FEATURES="autoconfig ccache distlocks parallel-fetch sandbox sfperms splitdebug strict test userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="sv"
LC_ALL="sv_SE.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-znow -Wl,--hash-style=gnu"
LINGUAS="sv"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/lila-theme /usr/portage/local/layman/musicbrainz /usr/portage/local/layman/gnome-experimental /usr/local/overlays/portage /usr/local/overlays/nouveau"
SYNC="rsync://liten/gentoo-portage"
USE="X a52 aac acpi aiglx alsa asf audioscrobbler avahi bash bash-completion beagle berkdb bitmap-fonts bogofilter branding bzip2 cairo cdr cli cracklib crypt cups dbus debug device-mapper divx dmx dpms dri dts dvd dvdr eds eiglx emboss encode evo evolution fam fat ffmpeg firefox flac freetype gd gdbm gif gimp glib glitz gmedia gmp gnome gnutls gpm gstreamer gtk gtk2 gtkhtml hal howl-compat iconv icu inotify ipv6 irda irmc isdnlog ithreads java jikes joystick jpeg keyring kqemu lcms ldap libg++ libnotify libsexy lm_sensors logrotate mad matroska matrox midi mikmod mmx mng mono moznocompose moznoirc moznomail mp3 mpeg msn musepack musicbrainz nautilus ncurses network nfs nls nntp nonfsv4 nptl nptlonly ntfs ntp numeric obex offensive ogg opengl pam pam_console pcre pdf perl pic png ppds pppd print python quicktime readline real realmedia reflection reiserfs rtc samba scanner sdl sensord session smp sox spell spf spl sse sse2 ssh ssl startup-notification subtitles svg syslog tagwriting tcltk tcpd test theora threads tiff truetype truetype-fonts tth type1-fonts unicode usb userlocales utf8 vorbis win32codecs wma wmf wmp wv wxwindows x86 xcb xinerama xinetd xml xml2 xorg xosd xprint xulrunner xv xvid zlib" ALSA_CARDS="emu10k1 intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="sv" USERLAND="GNU" VIDEO_CARDS="nvidia nouveau"
Unset:  CTARGET, INSTALL_MASK, PORTAGE_RSYNC_EXTRA_OPTS


And the very speaking .revdep-rebuild.* files telling package-versiona and what and what not to try to rebuild:

$ cat .revdep-rebuild.4_packages
app-admin/gnome-system-tools-2.14.0
app-arch/file-roller-2.16.3
app-text/evince-0.6.1-r2
dev-python/gnome-python-desktop-2.16.0
gnome-base/gnome-applets-2.16.2
gnome-extra/deskbar-applet-2.16.2-r1
gnome-extra/nautilus-cd-burner-2.16.3
media-gfx/imagemagick-6.3.0.5
media-sound/rhythmbox-0.9.8
media-video/totem-2.16.5

$ cat .revdep-rebuild.4_ebuilds 
app-admin/gnome-system-tools-2.17.91
app-arch/file-roller-2.17.92
app-text/evince-0.7.2
dev-python/gnome-python-desktop-2.17.93
gnome-base/gnome-applets-2.17.90
gnome-extra/deskbar-applet-2.17.92
gnome-extra/nautilus-cd-burner-2.17.8
media-gfx/imagemagick-6.3.0.5-r1
media-sound/rhythmbox-0.9.8
media-video/totem-2.17.92

$ cat .revdep-rebuild.5_order 
media-sound/rhythmbox-0.9.8
Comment 1 Paul Varner (RETIRED) gentoo-dev 2007-03-07 15:29:25 UTC
I need to see the full output from revdep-rebuild along with all of the .revdep-rebuild files attached to the case.
Comment 2 Xake 2007-03-07 20:26:13 UTC
Created attachment 112461 [details]
revdep-rebuild -p > Desktop/revdep.log
Comment 3 Xake 2007-03-07 20:26:55 UTC
Created attachment 112462 [details]
.revdep-rebuild.* for the log above
Comment 4 Xake 2007-03-07 20:29:29 UTC
Created attachment 112464 [details]
revdep-rebuild -X -p > Desktop/revdep-x.log

I will attach the .revdep-rebuild.* for this one as soon as someone tells me how to make revdep-rebuild keep its temporary files if it does not find anything broken.
Comment 5 Paul Varner (RETIRED) gentoo-dev 2007-03-07 20:39:42 UTC
(In reply to comment #4)
> Created an attachment (id=112464) [edit]
> revdep-rebuild -X -p > Desktop/revdep-x.log
> 
> I will attach the .revdep-rebuild.* for this one as soon as someone tells me
> how to make revdep-rebuild keep its temporary files if it does not find
> anything broken.

Run revdep-rebuild --keep-temp in order to keep the files.
Comment 6 Xake 2007-03-07 20:53:57 UTC
Created attachment 112470 [details]
.revdep-rebuild.* for the log above (revdep-rebuild -X)
Comment 7 Paul Varner (RETIRED) gentoo-dev 2007-03-10 04:23:15 UTC
I'm using the log file from the revdep-rebuild -X command,

what does the following command output?

EMERGE_DEFAULT_OPTS="" emerge --nospinner --pretend --oneshot --nodeps --quiet =app-text/evince-0.7.2
Comment 8 Xake 2007-03-10 09:36:16 UTC
# EMERGE_DEFAULT_OPTS="" emerge --nospinner --pretend --oneshot --nodeps --quiet =app-text/evince-0.7.2
[ebuild     U ] app-text/evince-0.7.2 [0.6.1-r2]
#

No more, no less.
Comment 9 Paul Varner (RETIRED) gentoo-dev 2007-03-10 15:27:35 UTC
Try the following revdep-rebuild command:

revdep-rebuild --no-ld-path --package-names --pretend and let me know if it works.

If it does not work then please run

bash -x revdep-rebuild --no-ld-path --package-names --pretend --keep-temp and attach the output and the .revdep-rebuild files
Comment 10 Xake 2007-03-11 12:19:21 UTC
Created attachment 112922 [details]
revdep-rebuild --no-ld-path --package-names --pretend

This commands finds the broken file and assigns it to evince, but still do not want to update the package. Follow shortly with output from the other command.
Comment 11 Xake 2007-03-11 13:11:49 UTC
Created attachment 112935 [details]
bash -x revdep-rebuild --no-ld-path --package-names --pretend --keep-temp
Comment 12 Xake 2007-03-11 13:12:31 UTC
Created attachment 112936 [details]
Tempfiles for the above logfile
Comment 13 Paul Varner (RETIRED) gentoo-dev 2007-03-11 22:20:17 UTC
I know that this is frustratating, so I apologize for how long that this is taking.  So far everything is looking correct except that the package is not ending up in the list to be built.

What does the following return?
emerge --nospinner --pretend --oneshot --emptytree --quiet =app-text/evince-0.7.2 =www-client/mozilla-firefox-2.0.0.2
Comment 14 Xake 2007-03-12 09:21:41 UTC
Created attachment 113048 [details]
Output per request

It is no problem. I have encountered this bug at least one time before, but that time I did not understand it as I do now and the report for that one got closed becouse of a spelling error (I used --package-name (missing s) when I reported but on the command line I used -X) and emerged the packages by hand before I had the oppertunity to come with something concrete. This time it is "only" evince, and that application I can live without for some more time so it is really no big problem this time.
Comment 15 Paul Varner (RETIRED) gentoo-dev 2007-03-13 00:34:20 UTC
Created attachment 113125 [details, diff]
Patch for revdep-rebuild -X

I found the bug and the attached patch should fix it.  Please let me know the results of your testing.
Comment 16 Xake 2007-03-13 14:12:12 UTC
That seems to do it. Thanks!
Comment 17 Paul Varner (RETIRED) gentoo-dev 2007-03-14 03:01:31 UTC
$ svn commit -m "Fix bug with --package-names option not rebuilding packages (Bug #169761)"
Sending        ChangeLog
Sending        src/revdep-rebuild/revdep-rebuild
Transmitting file data ..
Committed revision 356.
Comment 18 Paul Varner (RETIRED) gentoo-dev 2007-03-19 17:48:28 UTC
Fixed in gentoolkit-0.2.4_pre2
Comment 19 Paul Varner (RETIRED) gentoo-dev 2007-09-13 00:04:34 UTC
*** Bug 188668 has been marked as a duplicate of this bug. ***
Comment 20 Paul Varner (RETIRED) gentoo-dev 2007-09-13 00:21:15 UTC
*** Bug 188789 has been marked as a duplicate of this bug. ***