with util-linux-2.24 going stable (which now includes a dep on pkgconfig), we're hitting a circular dep when building stage3: (sys-apps/util-linux-2.24.1-r2, ebuild scheduled for merge) depends on (virtual/pkgconfig-0, ebuild scheduled for merge) (buildtime) (dev-util/pkgconfig-0.28, ebuild scheduled for merge) (buildtime) (dev-libs/glib-2.38.2-r1, ebuild scheduled for merge) (buildtime) (app-text/docbook-xml-dtd-4.1.2-r6, ebuild scheduled for merge) (buildtime) (app-text/build-docbook-catalog-1.19.1, ebuild scheduled for merge) (runtime) (sys-apps/util-linux-2.24.1-r2, ebuild scheduled for merge) (runtime) util-linux wants pkgconfig to probe system.d/bash-completion pkgconfig wants glib for a general util library glib wants docbook because ??? docbook wants util-linux because of `getopt` if we added virtual/pkgconfig to packages.build, that'd probably make things work. it's pretty much a given it'll be in the system nowadays from the start, and it'll probably only get more common in the core packages. if adding it to stage2 also incurs a circular dep, we can add USE=internal-glib to the bootstrap USE. it'll get rebuilt in the stage2->stage3 step.
I believe the internal-glib solution during bootstrap is best.
(In reply to SpanKY from comment #0) > glib wants docbook because ??? glib wants docbook for generating man pages and docs. > if we added virtual/pkgconfig to packages.build, that'd probably make things > work. it's pretty much a given it'll be in the system nowadays from the > start, and it'll probably only get more common in the core packages. > > if adding it to stage2 also incurs a circular dep, we can add > USE=internal-glib to the bootstrap USE. it'll get rebuilt in the > stage2->stage3 step. This seems like a good solution.
(In reply to Alexandre Rostovtsev from comment #2) > (In reply to SpanKY from comment #0) > > glib wants docbook because ??? > > glib wants docbook for generating man pages and docs. Ship prebuilt manpages, add USE=doc for docs, file upstream bug they forgot prebuilt manpages in their tarball > > > if we added virtual/pkgconfig to packages.build, that'd probably make things > > work. it's pretty much a given it'll be in the system nowadays from the > > start, and it'll probably only get more common in the core packages. > > > > if adding it to stage2 also incurs a circular dep, we can add > > USE=internal-glib to the bootstrap USE. it'll get rebuilt in the > > stage2->stage3 step. > > This seems like a good solution. not sure if it's possible to add per package USE flags for stage building like that? seems like the bug should be fixed in glib's ebuild
Wasn't internal-glib and
Iirc, USE=internal-glib was made to solve bootstrapping problems like this. It would be nice of have pre-built manpages in glib package, but it is kinda usual for upstream to forget about it, not sure how is done their release QA but this is far from the first time they are missing in a gnome package. And I am against the USE=doc solution as manpages are not optional per policy. Other docs would be gtk-doc I guess, but at least, this is pre-built and we do have to worry about it.
(In reply to Samuli Suominen from comment #3) > not sure if it's possible to add per package USE flags for stage building > like that? Just add internal-glib to BOOTSTRAP_USE in the profile, add virtual/pkgconfig to the system set, and teach bootstrap.sh to care about pkgconfig in stage2. Since internal-glib is only used by pkgconfig, this is perfectly safe to do, and solves the bug in a simple and effective manner :).
i've verified this fixes the s390 builds http://sources.gentoo.org/profiles/default/linux/packages.build?r1=1.13&r2=1.14 http://sources.gentoo.org/profiles/base/make.defaults?r1=1.114&r2=1.115