Skip to content
  • Nicola Sparnacci's avatar
    [CORE] Update features check for flavours · c18fbeba
    Nicola Sparnacci authored
    
    
    The function `local_conf_sanity_check` has been updated to consider also
    the variables assigned with `:append` and `+=` in the `local.conf`.
    
    The variables are checked over `*-feature.conf` files which are included
    in the layers needing mandatory features.
    
    The function shortly does the following:
    - check if the variables in the `*-feature.conf` are in the `local.conf`
    
    For each variable both in `local.conf` and `*-feature.conf`:
    - if a variable is assigned in `local.conf` with a different assignment
      (i.e. `0` vs `+=`, `:append` vs `+=`, etc), return a configuration
      error.
    
    - if a variable is assigned in `local.conf` with a different value
      than the one in the `*-feature.conf`, return a configuration error.
    
    - if a variable is assigned in `local.conf`` & `*-feature.conf` with the
      same values and operators, the one in the `local.conf` are removed
      and the one in `*-feature.conf` is preserved.
    
    - if a variable is assigned with `:append` or `+=` in the
      `local.conf`, the common values are removed from `local.conf` as they
      are already in `*-feature.conf`. For example:
        ```
        local.conf: VAR:append = " A B"
        *-feature.conf: VAR:append = " A"
        will result in:
        local.conf: VAR:append = " B"
        *-feature.conf: VAR:append = " A"
        ```
        the same applies for `+=` but it doesn't for `=`.
    
    Signed-off-by: default avatarNicola Sparnacci <nicola.sparnacci@seco.com>
    c18fbeba
Loading