Couldn't this all be configured via `compilation.Compiler`? You have introduced a model for an Intel compiler there so it seems natural to have all configuration in one place.