Maybe not so common problem, but still: :) while bootstrapping a gentoo prefix, i realised, that this is not a good idea: emerge -q -j5 --nodeps patch ncurses bash because i get: >>> Emerging (1 of 3) sys-devel/patch-2.5.9-r1 >>> Emerging (2 of 3) sys-libs/ncurses-5.7 >>> Emerging (3 of 3) app-shells/bash-4.0_p33-r00.1 >>> Installing (1 of 3) sys-devel/patch-2.5.9-r1 >>> Installing (3 of 3) app-shells/bash-4.0_p33-r00.1 >>> Installing (2 of 3) sys-libs/ncurses-5.7 i can imagine how portage does not know of any build order when ignoring dependencies (but the command line order should be the "dependency-chain". i think, that portage should only start one job, since the order of packages on the command line represents a strict order in which i want the packages to be merged. am i missing somehing? is this known?
It think the existing behavior is pretty natural. If you don't want parallel, use -j1.
mhm. thats what i'm doing now (actually, since this is done by a script, i'm doing "emerge -j5 --some-other-opts -j1 --nodeps ..."). i just thought that enforcing one job with nodeps in portage itself would save possible headaches, searching for build failures (and it is not that hard to imnplement i guess (2 liner...?)).
I guess we can add a option to toggle the behavior.
For example, we could add a --jobs-nodeps=JOBS option that defaults to 1 and allows the user to adjust it.
(In reply to comment #4) > For example, we could add a --jobs-nodeps=JOBS option that defaults to 1 and > allows the user to adjust it. > Tell me you aren't serious? :)
(In reply to comment #5) > (In reply to comment #4) > > For example, we could add a --jobs-nodeps=JOBS option that defaults to 1 and > > allows the user to adjust it. > > > > Tell me you aren't serious? :) > If we don't provide a way to use --jobs with --nodeps then prohibiting a potentially valid use case.
(In reply to comment #6) > (In reply to comment #5) > > (In reply to comment #4) [snip] > > If we don't provide a way to use --jobs with --nodeps then prohibiting a > potentially valid use case. > maybe, yes. but preventing portage from resolving dependencies is either during bootstrap operations, or because of a hack i guess (any other use cases?) :) a hack could well cause a performance penalty, and during bootstrap it's only a few merges that do this.
I feel like one should just not do this. I've wanted to actually do --nodeps -jN before to quickly extract (and prepare) a tonne of sources.