Created attachment 406876 [details] build.log Hello, sys-power/upower-pm-utils appears to need gettext at build time, otherwise it will fail in the configure phase. I've attached a build.log but it's also easy to reproduce: # emerge -C gettext # emerge -1 upower-pm-utils Thanks!
upower-pm-utils depends on intltool which rdepends on gettext. By uninstalling gettext you actually broke intltool and the dependency tree of the package. We can debate that this dependency must be listed explicitly due to calling gettext macros in configure: http://cgit.freedesktop.org/upower/tree/configure.ac#n234 I have no clear cut idea about this.
Some recent bugs (related to subslot rebuilds) have shown the importance of explicit deps in cases like these. Like it or not, upower-pm-utils currently depends on several *working* gettext binaries at build time. If it doesn't depend directly on them, emerge may allow them to be temporarily broken during an emerge run, when upower-pm-utils checks for them. If it has a proper direct dep, emerge will correct the problem on gettext binaries before they're used by upower-pm-utils' configure script.
Links to said reports would go a long way.
In this particular case, IMHO the situation is clear. Since configure.ac explicitly checks for AM_GNU_GETTEXT_VERSION([0.17]), we need to explicitly check for >=gettext-0.17. + 04 Aug 2015; Alexandre Rostovtsev <tetromino@gentoo.org> + upower-pm-utils-0.9.23-r2.ebuild: + Missing gettext dependency (bug #555010, thanks to Ben Kohler). + 04 Aug 2015; Alexandre Rostovtsev <tetromino@gentoo.org> + upower-0.99.2-r1.ebuild, upower-0.99.3.ebuild: + Missing gettext dependency (bug #555010, thanks to Ben Kohler).
(In reply to Gilles Dartiguelongue from comment #1) > upower-pm-utils depends on intltool which rdepends on gettext. > By uninstalling gettext you actually broke intltool and the dependency tree > of the package. > > We can debate that this dependency must be listed explicitly due to calling > gettext macros in configure: > > http://cgit.freedesktop.org/upower/tree/configure.ac#n234 > > I have no clear cut idea about this. If you can rely on intltool RDEPEND-ing on gettext all the time (i.e. the dependency not being removed in any forseeable future), there's no need for explicit dependency. Though indeed it may be cleaner *if* the package in question directly uses some gettext components rather than implicitly via intltool, and use of those components is not obligatory for intltool API. (In reply to Ben Kohler from comment #2) > If it doesn't depend directly on them, emerge may allow them to be > temporarily broken during an emerge run, when upower-pm-utils checks for > them. If it has a proper direct dep, emerge will correct the problem on > gettext binaries before they're used by upower-pm-utils' configure script. No, emerge must not allow any temporarily broken build-time dependencies.
I was a little overzealous in updating this bug. gettext is already in the depgraph (indirect) for upower-pm-utils which is enough for the issue I mentioned. My mistake. When I said "temporarily broken", I mean "not yet subslot-rebuilt, possibly relying on preserve-libs to work".