I just installed a new system, very little on it at this point. I attempted "emerge xorg-x11", which tries to pull in x11-libs/openmotif, x11-libs/Xaw3d and app-editors/emacs, among others. openmotif fails because it can't find some X11 header files (obviously because X11 isn't emerged yet). However, if I try "emerge -pv app-editors/emacs", the package order changes! Now emerge attempts to build xorg-x11 first, then openmotif, Xaw3d and emacs, which appears to be a more sensical build order. The root cause of this may be dev-python/docutils which has a USE flag "emacs". This attempts to pull in emacs, which pulls in Xaw3d and openmotif, but somehow nothing is checking to see if X11 is actually installed. Note also that virtual/x11 is present in one (emerge emacs) but not the other (emerge xorg). I am including my make.conf, and also the output of "emerge -pvt" for both xorg-x11 and emacs. I have not included the build errors. make.conf ===== CFLAGS="-O2 -march=athlon-xp -fomit-frame-pointer" CHOST="i386-pc-linux-gnu" CXXFLAGS="${CFLAGS}" MAKEOPTS="-j2" GENTOO_MIRRORS="http://gentoo.mirrors.easynews.com/linux/gentoo/" FEATURES="buildpkg" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="x86 3dnow -ipv6 X qt kde gtk gtk2 sdl gnome motif xinerama Xaw3d mysql postgres snmp emacs emacs-w3 apache2 php perl pcre rrdtool vhosts curl gd cdb gmp mime mmap mp3 mmx png soap sockets jpeg ssl sse spl svg skey threads tiff readline samba session maildir xml xml2 xmlrpc xsl soap simplexml session qmail imap java jms junit javascript javamail doc source flac gstreamer ieee1394 hal offensive samba nethack lm_sensors bash-completion imagemagick imlib kerberos ldap rdesktop" ===== emerge -pvt xorg-x11 ===== tecate ~ # emerge -pvt xorg-x11 These are the packages that I would merge, in reverse order: Calculating dependencies ...done! [ebuild N ] x11-terms/xterm-207 +Xaw3d +doc -toolbar +truetype -unicode 727 kB [ebuild N ] sys-apps/utempter-0.5.5.6 20 kB [ebuild N ] app-arch/rpm2targz-9.0-r3 2 kB [ebuild N ] x11-base/xorg-x11-6.8.2-r7 -3dfx +3dnow +bitmap-fonts -cjk -debug -dlloader -dmx +doc -font-server -insecure-drivers -ipv6 -minimal +mmx +nls -nocxx +opengl +pam -sdk +sse -static +truetype-fonts +type1-fonts (-uclibc) -xprint +xv 45,134 kB [ebuild N ] x11-base/opengl-update-3.0.0 0 kB [ebuild N ] app-admin/eselect-opengl-1.0.3 41 kB [ebuild N ] app-admin/eselect-1.0 +bash-completion +doc 142 kB [ebuild N ] dev-python/docutils-0.3.7 +emacs -glep 611 kB [ebuild N ] app-editors/emacs-21.4-r3 +X +Xaw3d -leim -lesstif +motif +nls -nosendmail 19,925 kB [ebuild N ] x11-libs/Xaw3d-1.5-r1 277 kB [ebuild N ] media-libs/tiff-3.7.4 +jpeg -nocxx +zlib 1,252 kB [ebuild N ] media-libs/jpeg-6b-r5 598 kB [ebuild N ] media-libs/giflib-4.1.4 +X -rle 591 kB [ebuild N ] x11-libs/openmotif-2.2.3-r9 0 kB [ebuild N ] x11-apps/ttmkfdir-3.0.9-r3 19 kB [ebuild N ] media-libs/fontconfig-2.2.3 732 kB [ebuild N ] media-libs/freetype-2.1.9-r1 -bindist +doc +zlib 1,183 kB ===== emerge -pvt app-editors/emacs ===== tecate ~ # emerge -pvt app-editors/emacs These are the packages that I would merge, in reverse order: Calculating dependencies ...done! [ebuild N ] app-editors/emacs-21.4-r3 +X +Xaw3d -leim -lesstif +motif +nls -nosendmail 19,925 kB [ebuild N ] media-libs/giflib-4.1.4 +X -rle 591 kB [ebuild N ] media-libs/tiff-3.7.4 +jpeg -nocxx +zlib 1,252 kB [ebuild N ] media-libs/jpeg-6b-r5 598 kB [ebuild N ] x11-terms/xterm-207 +Xaw3d +doc -toolbar +truetype -unicode 727 kB [ebuild N ] sys-apps/utempter-0.5.5.6 20 kB [ebuild N ] app-arch/rpm2targz-9.0-r3 2 kB [ebuild N ] x11-libs/Xaw3d-1.5-r1 277 kB [ebuild N ] x11-libs/openmotif-2.2.3-r9 0 kB [ebuild N ] virtual/x11-6.8 0 kB [ebuild N ] x11-base/xorg-x11-6.8.2-r7 -3dfx +3dnow +bitmap-fonts -cjk -debug -dlloader -dmx +doc -font-server -insecure-drivers -ipv6 -minimal +mmx +nls -nocxx +opengl +pam -sdk +sse -static +truetype-fonts +type1-fonts (-uclibc) -xprint +xv 45,134 kB [ebuild N ] x11-base/opengl-update-3.0.0 0 kB [ebuild N ] app-admin/eselect-opengl-1.0.3 41 kB [ebuild N ] app-admin/eselect-1.0 +bash-completion +doc 142 kB [ebuild N ] dev-python/docutils-0.3.7 +emacs -glep 611 kB [ebuild N ] x11-apps/ttmkfdir-3.0.9-r3 19 kB [ebuild N ] media-libs/fontconfig-2.2.3 732 kB [ebuild N ] media-libs/freetype-2.1.9-r1 -bindist +doc +zlib 1,183 kB
See also: http://bugs.gentoo.org/show_bug.cgi?id=128391 Not identical but it looks like maybe these are similar.
Yep, that's a cycle alright: xorg-x11-6.8.2-r2: opengl? ( >=x11-base/opengl-update-2.2.0 ) in RDEPEND opengl-update-3.0.0: app-admin/eselect-opengl in RDEPEND eselect-opengl-1.0.3: >=app-admin/eselect-1.0_rc1 in RDEPEND eselect-1.0: doc? ( dev-python/docutils ) in DEPEND docutils-0.3.7: emacs? ( virtual/emacs ) in DEPEND and emacs usually pulls in X. Question is where to break it. The best two things I can think of is making eselect not use docutils (by having prebuilt docs available) or making docutils not depend on emacs (install the .el file but don't bytecompile it). I have a slight preference for the former: eselect is a pretty basic thing which will only get used by more core stuff as time passes, so keeping its deps lean would be a good thing. Adding eselect@g.o to cc, comments?
Sounds good to me. Prebuilt docs are always nice. It's also simpler than trying to remove emacs as a dep of docutils.
As for openmotif dependency problems, I'm just installing a new system and openmotif-2.2.3-r9 (as part of X11-7 install) fails for missing the following header files: X11/Intrinsic.h X11/Shell.h X11/extensions/Print.h First two belong to x11-libs/libXt and the last to x11-proto/printproto. At a later point it missed X11/bitmaps/gray which belongs to x11-misc/xbitmaps. And further it failed on linking for libXp which belongs to x11-libs/libXp (which depends on x11-proto/printproto which would solve that) I checked the ebuild and there was no dependency on libXt, so probably adding it would fix that part. As for printproto, it is in (R)DEPEND but something must be wrong with the condition(s). Same for xbitmaps, which is in DEPEND. Or is this a DEPEND evaluation problem? After "emerge --oneshot libXt libXp xbitmaps" openmotif (for emerge x11) emerged as expected. Would this solve the problem for which this bug # was initially created?
marienz: Hmm... what about a PDEPEND on eselect inside eselect-opengl? I really don'T want to drop the optional generation of docs. Besides, i don't like to ship prebuilt docs.
I hope I am right when this bug can be closed as opengl-update is not pulled in by X anymore and openmotif dependency has been corrected.