The goal is to allow different apio.ini envs to use different files, for example different module implementations.
Proposal: have a new apio.ini option called project-files whose values are a list of include: and exclude: glob patters.
project-files =
exclude: lib/boards/*
include: lib/boards/board1
For a given project file, the evaluation if the file is included or excluded from the env is done as follows
- Initially the file is considered included.
- The glob patterns are iterated in the order they are defined
- If a file matches an
include: (exclude:) directive its status is force to 'included' (excluded).
- At the end of the end of iterating the patterns, the last file status wins.
These rules will not apply to apio.ini which must be unique and is always included.