Added support for the Metrowerks Embedded ARM and Metrowerks Embedded PowerPC toolchains (https://www.nxp.com/docs/en/reference-manual/CWMCUKINCMPREF.pdf).
The implementation is somewhat experimental. It has been tested on a few projects and works fairly well, but may have issues.
## Added str.splitlines method
[[str.splitlines]] can now be used to split a string into an array of lines.
## `generator.process(generator.process(...))`
Added support for code like this:
```meson
gen1 = generator(...)
gen2 = generator(...)
gen2.process(gen1.process('input.txt'))
```
## Extra files keyword in `declare_dependency`
`declare_dependency` have a new `extra_files` keyword,
to add extra files to a target. It is used mostly for IDE integration.
## Added a new '--genvslite' option for use with 'meson setup ...'
To facilitate a more usual visual studio work-flow of supporting and switching between
multiple build configurations (buildtypes) within the same solution, among other
[reasons](https://github.com/mesonbuild/meson/pull/11049), use of this new option
has the effect of setting up multiple ninja back-end-configured build directories,
named with their respective buildtype suffix. E.g. 'somebuilddir_debug',
'somebuilddir_release', etc. as well as a '_vs'-suffixed directory that contains the
generated multi-buildtype solution. Building/cleaning/rebuilding in the solution
now launches the meson build (compile) of the corresponding buildtype-suffixed build
directory, instead of using Visual Studio's native engine.
## `gnome.generate_gir()` now supports `env` kwarg
`gnome.generate_gir()` now accepts the `env` kwarg which lets you set environment variables.
## More data in introspection files
- Used compilers are listed in `intro-compilers.json`