On Mon, 2021-06-28 at 15:00 +0200, Agostino Sarubbo wrote:
> Hello all,
> 
> long story short:
> 
> when there is a major change (new gcc, new libc, and so on), tinderbox takes 
> a 
> lot of time to test the entire tree.
> 
> Let's do a practical example: 
> A new version of sys-devel/gcc is added to the tree.
> 
> There is no way to know how much packages compiles C/C++ code, so the easiest 
> way is compile the entire tree.
> 
> Instead, imagine that each ebuild declares a variable called SOURCETYPE ( or 
> similar, or in metadata.xml if you prefer ) and with a tool like equery/eix 
> we 
> are able to get the list of all packages that compiles C code.
> 
> The same thing applies to other languages like python, ruby, go and so on 
> where compile the dev-$language category covers a lot of packages, but there 
> will be always other ebuilds that uses $language in other categories.
> 
> What do you think?
> 

It's a worthwhile goal but it's practically impossible to get it right.
For example, right now we've had quite a few cases of Python ebuilds
wrongly declaring <stabilize-allarches/>, i.e. people missing use of C
besides Python.

That is, unless you can figure out a way for Portage to reliably detect
SOURCETYPE and tell people what to set.

-- 
Best regards,
Michał Górny



Reply via email to