On Mon, 2021-06-28 at 16:52 +0200, Michał Górny wrote: > > > > This is long overdue, for many reasons, but in particular it would > > force us to declare a dependency on a C compiler if one is needed and > > allow you to re-test only those packages that use a C compiler. > > > > Which C compiler? The one I have in CC for the package in question, or > the one selected via gcc-config, or any random C compiler that might not > be used at all? Does that mean that if clang is pulled via depgraph, > Portage will insist on depcleaning gcc by default? >
If the package declares a dependency on e.g. virtual/c-compiler, ago would want to re-test it whenever a new version of any compiler is released that satisfies virtual/c-compiler. Conversely, if the package doesn't require virtual/c-compiler, we may assume that it doesn't compile C code, and is not affected by the new version. I know switching toolchains is a mess at the moment, but independently adding (correct) dependency information should make many things easier without harming anything else. The precise nature of the dependencies would of course need some thought.