This series cleans up and modernizes the Meson code a bit:
- It adds the license SPDX name to the proper field
- Sets a minimum version, the version is fairly old, but without setting
a version then Meson will never warn about issues, including potentially
important ones like "this happens to work in some cases but wasn't
intended and doesn't work in all cases"
- uses more modern Meson features to make things easier for consumers
- Fixes the tests using the ensure_utf8 helpers by ensuring that they're
actually built, and placing them in the correct path.
- Adds the Meson test to the CI
* meson: add support for testsuite
* meson: fix deprecation warning for run_command with unchecked return code
This would implicitly default to false, so if something bizarre happened
and the command errored out, meson would consider that fine. Now meson
emits a warning about this deprecated legacy behavior, suggests that it
will eventually change, and, most importantly, prevents a warning-free
build.
Suppress the warning by manually specifying the sensible behavior, which
is to fail on errors.
* meson: download catch2 on demand if a system version is unavailable
Produced by running `meson wrap install catch2` and checking the results
into git.
No modifications to the build files are expected; this makes use of
https://mesonbuild.com/Wrap-dependency-system-manual.html#provide-section
* style: pre-commit.ci fixes
* ci: add meson build to the CI
* ci: meson doesn't depend on ninja or or have a ninja extra
* ci: minor cleanup to Meson job
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
* meson: Basic meson support
With this patch, CLI11 can be used as a meson
subproject: http://mesonbuild.com/Subprojects.html
However, CMake is still required for testing and
installation. The current meson.build is not a
complete replacement.
* meson: Added meson test
* Adding Azure test