Emerge's --autounmask option shows a comment before the actual line that should be added to package.accept_keywords. Which is nice but the comment doesn't always saying quite right thing. In the following case --autounmask shows that "static-libs" USE is required for "media-libs/lcms" and the comment is saying that it is because of =media-gfx/dcraw-9.04[lcms]. But dcraw does not have lcms[static-libs] dependency; it has "lcms? ( =media-libs/lcms-1* )" dependency. The one who needs "media-libs/lcms:0[static-libs]" is "media-gfx/splashutils-1.5.4.3-r3". Without the --autounmask option the output is correct. Version of portage is 2.1.9.25. Emerge --info attached. See below for (shortened) outputs in both cases: ------------------------------------------- emerge -uDNpv --autounmask world ... [ebuild U ] media-gfx/dcraw-9.04 [8.98-r1] USE="gimp jpeg lcms nls" LINGUAS="cs ru -ca -da% -de -eo -es -fr -hu -it -nl -pl -pt -sv -zh_CN -zh_TW" 165 kB [0] ... Total: 381 packages (348 upgrades, 19 new, 4 in new slots, 10 reinstalls, 2 uninstalls), Size of downloads: 2,016,860 kB Conflict: 25 blocks Portage tree and overlays: [0] /usr/portage [?] indicates that the source repository could not be determined The following USE changes are necessary to proceed: #required by =media-gfx/dcraw-9.04[lcms], required by @selected, required by @world (argument) =media-libs/lcms-1.19 static-libs ------------------------------------------- ------------------------------------------- # emerge -uDNpv world ... emerge: there are no ebuilds built with USE flags to satisfy "media-libs/lcms:0[static-libs]". !!! One of the following packages is required to complete your request: - media-libs/lcms-1.19 (Change USE: +static-libs) (dependency required by "media-gfx/splashutils-1.5.4.3-r3" [installed]) (dependency required by "media-gfx/splash-themes-gentoo-20100302" [installed]) (dependency required by "@selected") (dependency required by "@world" [argument]) -------------------------------------------
Created attachment 258801 [details] emerge --info
(In reply to comment #0) > The one who needs "media-libs/lcms:0[static-libs]" is > "media-gfx/splashutils-1.5.4.3-r3". Without the --autounmask option the output > is correct. I suspect that the "correct" output is due to the graph creation bailing out early, which makes it more likely to produce correct output by accident. In the case of --autounmask, the graph creation goes to completion, so there are more "incorrect" edges available to be accidentally traversed.
This is fixed in git: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=7c231888d1d5ccac470d5f039be57ac0e5934f6c
This is fixed in 2.1.9.36 and 2.2.0_alpha20.