Summary: | PROVIDE="virtual/linux-sources" not inherited from kernel ebuild | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Oliver Burnett-Hall <olly> |
Component: | Unclassified | Assignee: | Gentoo Linux bug wranglers <bug-wranglers> |
Status: | RESOLVED DUPLICATE | ||
Severity: | major | CC: | olly |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Oliver Burnett-Hall
2003-02-13 16:37:51 UTC
please post `emerge info` Okay, been doing more digging and it wasn't what I thought - virtual/linux-sources was being inherited (it was showing up in /var/db/pkg/sys-kernel/*/PROVIDE"). The problem seems to have been down to the way portage handles virtual dependencies and keyword masking. 'emerge -up --deep nvidia-kernel' fails due to unsatified dependency for virtual/linux-sources. On the other hand 'ACCEPT_KEYWORDS="~x86" emerge -up --deep nvidia-kernel' works. This is because wolk-sources are masked with KEYWORDS="~x86". The update without ACCEPT_KEYWORDS="~x86" still fails after wolk-sources have been unmerged. This is despite the only kernel-sources package now being vanilla-sources-2.4.20 which is stable. And the update with ~x86 will now result in wolk-sources being remerged. Finally, remerging vanilla-sources makes the problem go away. The virtual/linux-sources dependency is now satisfied both with and without ACCEPT_KEYWORDS="~x86". As far as I can tell, this is all happening because portage is only looking at the only the last package to be emerged that satisfies the virtual dependency. I can't tell why it is doing this (/etc/make.profile/virtuals has always given gentoo-sources as being the default for linux-sources, and I wasn't sure where else to look). In cases like this - if the last merged package satisfying the dependency is masked or has since been unmerged, portage needs to be more intelligent and see if any other merged packages will do. - olly Oops, forgot emerge info. And sorry about the word-wrapping - thought bugzilla would do that for me :( # emerge info Portage 2.0.46-r12 (default-x86-1.4, gcc-3.2.1, glibc-2.3.1-r2) ================================================================= System uname: 2.4.21-pre4 i686 AMD Athlon(tm) XP 1900+ GENTOO_MIRRORS="ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo/ http://gentoo.oregonstate.edu/ http://www.ibiblio.org/pub/Linux/distributions/gentoo" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" PORTDIR="/usr/portage" DISTDIR="/usr/portage/distfiles" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR_OVERLAY="/usr/local/portage" USE="x86 3dnow apm avi crypt cups encode gif jpeg libg++ libwww mikmod mmx mpeg ncurses nls pdflib png qtmt quicktime spell truetype xml2 xmms xv zlib gtkhtml alsa gdbm berkdb slang readline bonobo svga tcltk java guile X sdl gpm tcpd pam ssl perl python esd imlib oggvorbis gnome gtk qt opengl mozilla cdr +3dnow +alsa -arts +cups +doc +evo +gtk +gtk2 +gpm +java -kde +maildir +mmx -motif +mozilla +nls +oggvorbis +opengl -oss +python +quicktime +sdl +truetype +X +xmms" COMPILER="gcc3" CHOST="i686-pc-linux-gnu" CFLAGS="-march=athlon-xp -O3 -pipe -funroll-loops -fomit-frame-pointer" CXXFLAGS="-march=athlon-xp -O3 -pipe -funroll-loops -fomit-frame-pointer" ACCEPT_KEYWORDS="x86" MAKEOPTS="-j2" AUTOCLEAN="yes" SYNC="rsync://rsync.gentoo.org/gentoo-portage" FEATURES="sandbox ccache" |