Suggest more user friendly configuration for program fragments and requirements
Published in build:
In Klever 2.0 program fragments and requirements are configured diversely and both ways are not user friendly enough. Some related thoughts:
- Since requirement configurations for various programs differ too much, it has sense to split base.json into, say, linux.json, busybox.json, etc. This does not mean that requirements from different sets can not reuse the same specifications.
- Using requirement identifiers like linux:arch:io is obsolete, since now requirements are represented as trees. I suggest to use prefix, e.g. Linux, as a separate option that should be used both for program fragments and requirements. Then one has to specify requirement sub-forests to be checked. It should be allowed to specify sub-forests partially, e.g. drivers should correspond to all requirements with drivers as a tree root.
- Parameter version should be incorporated into fragmentation set and should not be specified if there is not corresponding divisions.
- specifications set should be renamed with specification set.
- " (base)" from "Linux 3.14 (base)" should be moved to some internal configuration option. "Linux" will be also moved to option program.