Changes

Jump to: navigation, search

Ruby-kit

285 bytes added, 9 months ago
Portage Limitations (Technical)
Because of this design, settings in profiles that have the potential of changing are not allowed to "influence" the eclass directly. Eclasses are just allowed to "augment" things like dependencies in an ebuild based on their own, self-contained logic. Thus, {{c|RUBY_TARGETS}} is not allowed to be simply read and used by the eclass. Doing this would result in the Portage md5-cache containing incorrect information. So we are unfortunately stuck in a position where we need to "keep the beams from touching" and need to have hard-coded logic or values in the eclass so that Portage can track any changes to this logic. If we change the values in the eclass, then its digest will change, and thus the md5-cache will detect this change and update its cache of ebuild metadata.
 
{{Note|The current rule for Portage is that dependencies in packages must be defined in the ebuild itself, and may be modified by eclasses. But eclasses cannot be 'influenced' by profile settings, because Portage is unable to detect these changes and invalidate its internal cache.}}
There is no trivial solution to this that I am aware, but there are potential solutions:
Bureaucrats, Administrators, wiki-admins, wiki-staff
6,633
edits

Navigation menu