jarro2783 / cxxopts

Lightweight C++ command line option parser
MIT License
4.25k stars 590 forks source link

Add Meson buildsystem support #424

Open dcbaker opened 8 months ago

dcbaker commented 8 months ago

Meson, Like CMake and Bazel, is a modern build system supporting C++ with the ability to configure and build dependencies from source. To do this effectively, it needs native Meson build definitions for the project to be built. This PR adds those definitions with as much parity to the C++ build system as possible, with the exception of the generation of the CMake configuration files (Meson cannot generate sophisticated ones using targets), and without some of the tests, since one is for CMake files it doesn't generate, and the other is for fuzzing, which is still a painful experience in Meson.

I've provided CI jobs, but much more minimal ones than what CMake runs.


This change is Reviewable

jarro2783 commented 8 months ago

Thanks, I know nothing about Meson so if it builds then it looks good to me. I just don't see the main unit tests being built and run.

dcbaker commented 8 months ago

You're right! I'm not sure how I missed adding that. the latest version has that tested added.

jarro2783 commented 7 months ago

Does this run the tests?

jarro2783 commented 7 months ago

It looks like it builds the tests but doesn't run them. I think it would be good to run them as well.

dcbaker commented 7 months ago

Yeah, i think it should be running them, but it doesn't. I'm not sure if it's a GitHub configuration issue or something in the Meson. I haven't had time to look this week, but I'm hoping to on Monday