Problem Description:
We currently maintain a large set of Variants which have the same configuration:
lib, build-dependencies and kernel-parameters are identical whereas included-packages differs slightly between variants.
Our structure is more or less as follows:
VariantA -- (+ ssh) --> Variant A Dev
VariantA -- (+ device drivers) --> Variant B
VariantB -- (+ ssh) --> Variant B Dev
It would be nice to be able to define the variant in this sort of hierarchical way to reduce code duplication and chances of things drifting apart.
Proposal
A new tag could be introduced to specify the parent variant.
In the simplest iteration, the behaviour could be that all non-specified sections from the parent variant are inherited as-is, while anything that gets specified gets overridden.
A more useful implementation would allow to extend lists and modify specific settings instead of entire sections.
Problem Description:
We currently maintain a large set of Variants which have the same configuration:
lib, build-dependencies and kernel-parameters are identical whereas included-packages differs slightly between variants.
Our structure is more or less as follows:
VariantA -- (+ ssh) --> Variant A Dev
VariantA -- (+ device drivers) --> Variant B
VariantB -- (+ ssh) --> Variant B Dev
It would be nice to be able to define the variant in this sort of hierarchical way to reduce code duplication and chances of things drifting apart.
Proposal
A new tag could be introduced to specify the parent variant.
In the simplest iteration, the behaviour could be that all non-specified sections from the parent variant are inherited as-is, while anything that gets specified gets overridden.
A more useful implementation would allow to extend lists and modify specific settings instead of entire sections.