Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 452172

Summary: emerge's --jobs does not do full parallelization due to PDEPEND circular dependencies
Product: Portage Development Reporter: Yichao Zhou <broken.zhou>
Component: UnclassifiedAssignee: Portage team <dev-portage>
Status: UNCONFIRMED ---    
Severity: normal CC: esigra
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=279623
https://bugs.gentoo.org/show_bug.cgi?id=856631
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 184128    

Description Yichao Zhou 2013-01-15 04:26:35 UTC
Today, I install a new gentoo.  I try to install with parallelization.

But packages
[ebuild  N     ] x11-drivers/xf86-video-ati-7.0.0  USE="udev (-glamor)" 
[ebuild  N     ] x11-drivers/xf86-video-intel-2.20.13  USE="dri sna udev -glamor -uxa -xvmc" 
[ebuild  N     ] x11-drivers/xf86-input-synaptics-1.6.2-r1 
[ebuild  N     ] x11-drivers/xf86-input-evdev-2.7.3 
do not compile parallelly.

# emerge xorg-drivers xorg-server

Gentoo-20121221 / # emerge xorg-drivers xorg-server

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N     ] sys-libs/mtdev-1.1.3  USE="-static-libs" 
[ebuild  N     ] x11-apps/xauth-1.0.7  USE="ipv6" 
[ebuild  N     ] x11-apps/xkbcomp-1.2.3 
[ebuild  N     ] x11-proto/trapproto-3.4.3 
[ebuild  N     ] x11-proto/bigreqsproto-1.1.2  USE="-doc" 
[ebuild  N     ] x11-proto/xf86dgaproto-2.1-r1 
[ebuild  N     ] x11-proto/xf86rushproto-1.1.2-r1 
[ebuild  N     ] x11-misc/xbitmaps-1.1.1 
[ebuild  N     ] x11-proto/xcmiscproto-1.2.2  USE="-doc" 
[ebuild  N     ] x11-apps/xrdb-1.0.9 
[ebuild  N     ] x11-misc/xkeyboard-config-2.7 
[ebuild  N     ] x11-apps/xinit-1.3.2  USE="minimal" 
[ebuild  N     ] x11-base/xorg-server-1.13.1  USE="ipv6 nptl suid udev xorg -dmx -doc -kdrive -minimal (-selinux) -static-libs -tslib -xnest -xvfb" 
[ebuild  N     ] x11-base/xorg-drivers-1.13  INPUT_DEVICES="evdev synaptics -acecad -aiptek -elographics -fpit -hyperpen -joystick -keyboard -mouse -mutouch -penmount -tslib -vmmouse -void -wacom" VIDEO_CARDS="intel radeon -apm -ark -ast -chips -cirrus -dummy -epson -fbdev -fglrx (-geode) -glint -i128 (-i740) -mach64 -mga -modesetting -neomagic (-newport) -nouveau -nv -nvidia (-omap) (-omapfb) -qxl -r128 -rendition -s3 -s3virge -savage -siliconmotion -sis -sisusb (-sunbw2) (-suncg14) (-suncg3) (-suncg6) (-sunffb) (-sunleo) (-suntcx) -tdfx -tga -trident -tseng -v4l -vesa -via -virtualbox -vmware (-voodoo)" 
[ebuild  N     ] x11-drivers/xf86-video-ati-7.0.0  USE="udev (-glamor)" 
[ebuild  N     ] x11-drivers/xf86-video-intel-2.20.13  USE="dri sna udev -glamor -uxa -xvmc" 
[ebuild  N     ] x11-drivers/xf86-input-synaptics-1.6.2-r1 
[ebuild  N     ] x11-drivers/xf86-input-evdev-2.7.3 

Would you like to merge these packages? [Yes/No] Y
>>> Verifying ebuild manifests
>>> Running pre-merge checks for x11-base/xorg-server-1.13.1
>>> Running pre-merge checks for x11-drivers/xf86-input-synaptics-1.6.2-r1
 * Determining the location of the kernel source code
 * Found kernel source directory:
 *     /usr/src/linux
 * Found kernel object directory:
 *     /lib/modules/3.6.11-gentoo/build
 * Found sources for kernel version:
 *     3.6.11-gentoo
>>> Starting parallel fetch
>>> Emerging (1 of 18) sys-libs/mtdev-1.1.3
>>> Emerging (2 of 18) x11-apps/xauth-1.0.7
>>> Emerging (3 of 18) x11-apps/xkbcomp-1.2.3
>>> Emerging (4 of 18) x11-proto/trapproto-3.4.3
>>> Installing (1 of 18) sys-libs/mtdev-1.1.3
>>> Emerging (5 of 18) x11-proto/bigreqsproto-1.1.2
>>> Installing (2 of 18) x11-apps/xauth-1.0.7
>>> Emerging (6 of 18) x11-proto/xf86dgaproto-2.1-r1
>>> Emerging (7 of 18) x11-proto/xf86rushproto-1.1.2-r1
>>> Installing (4 of 18) x11-proto/trapproto-3.4.3
>>> Emerging (8 of 18) x11-misc/xbitmaps-1.1.1
>>> Installing (3 of 18) x11-apps/xkbcomp-1.2.3
>>> Emerging (9 of 18) x11-proto/xcmiscproto-1.2.2
>>> Installing (5 of 18) x11-proto/bigreqsproto-1.1.2
>>> Emerging (10 of 18) x11-apps/xrdb-1.0.9
>>> Installing (6 of 18) x11-proto/xf86dgaproto-2.1-r1
>>> Emerging (11 of 18) x11-misc/xkeyboard-config-2.7
>>> Installing (7 of 18) x11-proto/xf86rushproto-1.1.2-r1
>>> Installing (8 of 18) x11-misc/xbitmaps-1.1.1
>>> Installing (9 of 18) x11-proto/xcmiscproto-1.2.2
>>> Installing (10 of 18) x11-apps/xrdb-1.0.9
>>> Emerging (12 of 18) x11-apps/xinit-1.3.2
>>> Installing (11 of 18) x11-misc/xkeyboard-config-2.7
>>> Installing (12 of 18) x11-apps/xinit-1.3.2
>>> Emerging (13 of 18) x11-base/xorg-server-1.13.1
>>> Installing (13 of 18) x11-base/xorg-server-1.13.1
>>> Recording x11-base/xorg-server in "world" favorites file...
>>> Emerging (14 of 18) x11-base/xorg-drivers-1.13
>>> Installing (14 of 18) x11-base/xorg-drivers-1.13
>>> Recording x11-base/xorg-drivers in "world" favorites file...
>>> Emerging (15 of 18) x11-drivers/xf86-video-ati-7.0.0
>>> Installing (15 of 18) x11-drivers/xf86-video-ati-7.0.0
>>> Emerging (16 of 18) x11-drivers/xf86-video-intel-2.20.13
>>> Installing (16 of 18) x11-drivers/xf86-video-intel-2.20.13
>>> Emerging (17 of 18) x11-drivers/xf86-input-synaptics-1.6.2-r1
>>> Installing (17 of 18) x11-drivers/xf86-input-synaptics-1.6.2-r1
>>> Emerging (18 of 18) x11-drivers/xf86-input-evdev-2.7.3
>>> Installing (18 of 18) x11-drivers/xf86-input-evdev-2.7.3
>>> Jobs: 18 of 18 complete                         Load avg: 2.19, 1.96, 2.12
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.

make.conf:
CFLAGS="-march=native -O2 -pipe"
CXXFLAGS="${CFLAGS}"
CHOST="x86_64-pc-linux-gnu"

MAKEOPTS="-j9 -l16"
EMERGE_DEFAULT_OPTS="--jobs=4 --load-average=7 --ask"
PORTAGE_ELOG_SYSTEM="save"
PORTAGE_ELOG_CLASSES="info, warn, error, log, qa"
#PORTAGE_NICENESS="12"

USE="socks5 portaudio python pulseaudio -gnome -gtk -gstreamer"

VIDEO_CARDS="intel radeon"
INPUT_DEVICES="evdev synaptics"

LINGUAS="en zh_CN zh_HK zh_TW"

#PORTDIR_OVERLAY="/usr/local/portage"
ACCEPT_LICENSE="*"

KDIR=/usr/src/linux
#source /var/lib/layman/make.conf
FEATURES="sandbox userfetch"
Comment 1 Zac Medico gentoo-dev 2013-01-15 11:15:47 UTC
Your issue it triggered by the following circular dependency:

    x11-drivers/* -> xorg-server -> xorg-drivers -> x11-drivers/*

It happens because of the following dependency in the xorg-drivers ebuild:

   PDEPEND=xorg? ( >=x11-base/xorg-drivers-1.13 )