Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 796230 - systemd.eclass: Permit entirely skipping pkgconfig BDEPEND
Summary: systemd.eclass: Permit entirely skipping pkgconfig BDEPEND
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo systemd Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-06-15 14:04 UTC by Daniel M. Weeks
Modified: 2021-06-15 16:04 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel M. Weeks 2021-06-15 14:04:01 UTC
I'll preface this by saying it's a corner case. I'm also not sure whether this should be fixed by way of the eclass or refining the policy on requiring systemd unit files to always be installed. Regardless, the issue arises from the systemd eclass forcing a dependency on pkgconfig.

On a system exclusively using binary packages, there is typically no need for pkgconfig and it won't be installed. The BDEPEND on pkgconfig is good for this case since it won't be triggered. However, *-bin packages do still trigger BDEPEND which can result in pkgconfig being installed for maybe just 1 file location to be selected, only for pkgconfig to be removed again. (grafana-bin is an example of this.)

*-bin packages affected by this could take advantage of the fallback path and avoid the churn if they had an option to bypass the injection of pkgconfig in BDEPEND by the systemd eclass.

Alternatively, *-bin packages could be permitted to use USE=systemd to control the installation of the unit file(s). This would be a small deviation from the current policy but I don't think it violates the spirit of it; *-bin packages are not going to be rebuilt if the user enables/disabled the systemd useflag.

Reproducible: Always
Comment 1 Mike Gilbert gentoo-dev 2021-06-15 15:29:13 UTC
My suggestion would be to create binpkgs for these *-bin packages to avoid pulling in BDEPEND on systems where you are not compiling things.

Adding any additional complexity to any ebuilds/eclasses to work around this corner case is not worth the effort.