* Add new option --skip-packages for check command
Check tools might fail if they're not able to preprocess source
files, for example, Cppcheck uses a custom preprocessor that is
not able to parse complex preprocessor code in zephyr framework).
Instead user can specify this option to skip headers included from
packages and only check project sources.
* Fix toolchain built-in include paths order
C++ and fixed directories should have higher priority
* Refactor check feature
The main purpose is to prepare a more comprehensive build environment.
It's crucial for cppcheck to be able to check complex frameworks like
zephyr, esp-idf, etc. Also detect a special case when cppcheck fails to check
the entire project (e.g. a syntax error due to custom preprocessor)
* Add new test for check feature
Tests ststm32 platform all tools and the main frameworks
* Update check tools to the latest available versions
* Test check tools and Zephyr framework only with Python 3
* Tidy up code
* Add history entry
* Add initial support for PVS-Studio check tool
* Enable all available PVS-Studio analyzers by default
* Add tests for PVS-Studio check tool
* Improve handling check tool extra flags that contain colon symbol
* Fixed an issue when configuration file options partly ignored when using custom ``--project-conf`` // Resolve#3034
* Py2 compatible makedirs
* Fix circle dependency
* Fix broken import in test examples
* Fix history
* Remove YAPF markers
* PyLint fix
* Fix invalid project conf path
* Move PIO Core to the root on Windows, issue with long CPPPATHs
* Respect global PLATFORMIO_BUILD_CACHE_DIR env var
* Fix Appveyor paths
* Minor changes