Current (possibly unwritten) policy: - eclasses declare USE-flags they honor in their own IUSE - ebuilds declare USE-flags they honor in their own IUSE - ebuilds do not declare USE-flags honored by eclasses they inherit
This policy has been around for a while. It assumes that all the flags honored by an eclass are likewise honored by all the ebuilds that inherit that eclass. Of course this assumption is false. An eclass might provide a function "install_docs" that calls, for example, "use doc". The ebuild inheriting the eclass might not call "install_docs". In that case, if IUSE="doc" in the eclass, it will be inaccurately displayed when doing emerge -pv of the package. The other possibility is to push IUSE declarations completely into the ebuild. In that case, it becomes a maintenance headache since an update to the eclass might necessitate a cascading update to all the ebuilds. Hence the current policy, however inaccurate the results might be. So right now the policy is broken, but the apparent alternative is unmanageable. Ideas? Regards, Aron -- Aron Griffis Gentoo Linux Developer
pgpkKPYjeiMnW.pgp
Description: PGP signature